Board logo

标题: IAR的命令行编译方法 [打印本页]

作者: luoman    时间: 2010-8-4 18:09     标题: IAR的命令行编译方法

IAR的命令行编译方法


IAR的集成环境给程序的调试和跟踪提供很大的方便.本人做MSP430项目的时候这个软件用起来很顺手,但当程序定型以后,特别是在一套硬件上有多个应用版本存在的时候,如果需要改动一下公用部分的程序,则会很麻烦,我们需要用IAR打开一个个project,然后再编译.如果应用很多,将不胜其烦.
所以就想IAR能不能进行命令行编译,只要编个批处理文件,一切就OK了.便开始找各方的资料,无奈多方搜索未果,干脆自己琢磨算了,经过努力,终于搞定了.

我用的是MSP430F5418的芯片, IAR版本为4.20.1
以下提供一个批处理的编译流程
REM START
REM 设置IAR的安装路径
PATH=C:\Program Files\IAR Systems\Embedded Workbench 5.3 Evaluation\430\bin
REM 设置430系统的库文件和头文件的目录
SET IARSYSTEM=C:\Program Files\IAR Systems\Embedded Workbench 5.3 Evaluation\430
REM 设置应用程序的路径
SET APP=C:\MY_APP
REM 源程序路径
SET APP_src="/%APP%"\src
REM OBJ文件路径
SET OBJ_PATH=%APP%\Debug\Obj
REM 配置编译参数
SET COMPILE_CONFIG_1=--no_cse --no_unroll --no_inline --no_code_motion --no_tbaa --debug -D__MSP430F5418__ -e --double=64
SET COMPILE_CONFIG_2=--dlib_config %IARSYSTEM%\LIB\DLIB\dl430xldf.h
SET COMPILE_CONFIG_3=-I %APP%\INC\
SET COMPILE_CONFIG_4=-I %IARSYSTEM%\INC\
SET COMPILE_CONFIG_5=-I %IARSYSTEM%\INC\DLIB\
SET COMPILE_CONFIG_6=--core=430X --data_model=large -On
SET COMPILE_CONFIG=%COMPILE_CONFIG_1% %COMPILE_CONFIG_2% %COMPILE_CONFIG_3% %COMPILE_CONFIG_4% %COMPILE_CONFIG_5% %COMPILE_CONFIG_6%
REM 配置链接参数
SET LINK_CONFIG_1=-o %APP%\Debug\Exe\my_dest.txt
SET LINK_CONFIG_2=-Fmsp430_txt -l %APP%\Debug\List\my_dest.map -xms
SET LINK_CONFIG_3=-I%IARSYSTEM%\LIB\
SET LINK_CONFIG_4=-f %IARSYSTEM%\CONFIG\lnk430F5418.xcl -Hff -D_STACK_SIZE=A0
SET LINK_CONFIG_5=%IARSYSTEM%\LIB\DLIB\dl430xldf.r43 -D_DATA16_HEAP_SIZE=A0
SET LINK_CONFIG_6=-Ointel-extended=%APP%\Debug\Exe\my_dest.hex
SET LINK_CONFIG_7=-s __program_start -D_DATA20_HEAP_SIZE=50
SET LINK_CONFIG=%LINK_CONFIG_1% %LINK_CONFIG_2% %LINK_CONFIG_3% %LINK_CONFIG_4% %LINK_CONFIG_5% %LINK_CONFIG_6% %LINK_CONFIG_7%
REM 执行编译
icc430.exe %APP_SRC%\main.c -o %OBJ_PATH%\ %COMPILE_CONFIG%
REM 执行链接
xlink.exe %OBJ_PATH%\main.r43 %LINK_CONFIG%
REM END
编译,链接 参数项的具体含义IAR的帮助文件有详细解释,可以去参考.






欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0