Bootstrap

VxWorks gcc编译"//"注释问题

在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) 

;