如何使ARM Eclipse for DS-5了解编译器预定义的宏?

如何使ARM Eclipse for DS-5了解编译器预定义的宏?,c,arm,eclipse-cdt,ds-5,C,Arm,Eclipse Cdt,Ds 5,我正在使用ARMECLISPEforDS-5环境来维护和构建一个命令行(基于makefile)项目。使用Eclipse的索引器分析代码以进行智能浏览和编辑,看起来它无法识别底层的ARM C编译器5预定义宏。例如,如果我的代码中有: #warning "XXXXXXXX Im here 1 XXXXXXX" #ifdef __arm__ #warning "XXXXXXXX Im here 2 XXXXXXX" #endif 然后在编译模块时,我会看到第一

我正在使用ARMECLISPEforDS-5环境来维护和构建一个命令行(基于makefile)项目。使用Eclipse的索引器分析代码以进行智能浏览和编辑,看起来它无法识别底层的ARM C编译器5预定义宏。例如,如果我的代码中有:

#warning "XXXXXXXX Im here 1 XXXXXXX"
#ifdef __arm__
#warning "XXXXXXXX Im here 2 XXXXXXX"
#endif
然后在编译模块时,我会看到第一个和第二个警告()。但是,在编辑器中,
#ifdef
块中的代码变灰。因此,我在
Problems
视图中有数百个错误指示

如何使环境了解编译器的内置设置


*使用ARMDS-5版本5.20和armcc版本5.05,您可以设置Eclipse C/C++项目属性:预处理器包括路径、宏。添加宏或预处理器文件有助于理解编译器对eclipse的预定义/宏

请注意,也可以在单个资源(如文件或文件夹)上设置条目。打开文件或文件夹属性以检查特定于资源的条目。文件夹或项目上的条目将应用于其下的所有子文件夹和C/C++文件,除非在较低级别上重写

有关更多信息,请查看此链接

谢谢。那时候我就是这么做的。我还向ARM汇报了情况,我认为至少其中一些问题在以后的修订中得到了解决。然而,这个答复并没有直接或完全回答我的问题。它只会解决我们所知道的一些宏的问题,而这些宏可能会改变(正如Toolchain 6中从基于GCC的编译器到基于CLANG的编译器的转变向我们展示的那样)。