在vxworks开发环境workbench下新建工程时选用gcc工具,默认无法使用“//”进行注释,而diab工具链默认支持。
原因是gcc工具链默认的编译选项使用了-ansi 编码规范不支持“//”注释,只支持“/**/”的方式来注释。
解决方法1:
在工程属性中添加-std=c89或者-std=c99 (推荐,有的平台c89也不行)
方法2:
在工程属性中已有的编译选项中,将“-ansi”改为-std=c89或者-std=c99 (推荐,有的平台c89也不行)
方法3:
最根本,也是针对所有平台,永久性修改。
F:\WindRiver_6.9ppc\vxworks-6.9\target\h\tool\gnu\defs.gnu
将CC_COMPILER(关键)
#CC_COMPILER = -ansi -fno-zero-initialized-in-bss
改为,直接去掉-ansi也不要加-std=c99:
CC_COMPILER = -fno-zero-initialized-in-bss
另外:
F:\WindRiver_6.9ppc\vxworks-6.9\target\h\make\defs.vxWorks
中有CFLAGS,在这里可以直接添加优化选项、调试选项或其他选项:
CFLAGS = $(CMPSCRIPTLIB_CFLAGS) $(CC_ARCH_SPEC) $(CC_COMPILER) -g $(CC_OPTIM)