Eclipse CDT和未知标签
目前,我们正在寻求从CodeWright(早已被Borland放弃)转移到Eclipse的开发环境。 我们正在使用Eclipse进行Perl,PHP和一些Windows C ++开发,取得了很大的成功。
然而,问题出现在我们的嵌入式环境中,在makefile中使用了一些Excel似乎无法理解的定义。 这是一个例子(改变了值以保护有罪者):
F_FOO unsigned char foo(ptr *this) { }
其中F_FOO在makefile中定义为
F_FOO=@foobar
Eclipse将突出显示F_FOO并将其标记为语法错误。 这导致各种悲伤和可追溯性。
在某些情况下,这也发生在Builder C ++中的一些代码中,其中Eclipse不知道如何处理关键字__fastcall。
任何有关这方面的帮助(我知道我们不能成为唯一遇到此问题的人)将受到高度赞赏。
我们在header指令中尝试了#define,但是由于项目的大小以及文件的绝对数量,结果certificate这是一种不太实用的方法。
围绕Eclipse工具,我们找到了一个适合我们的解决方案,详情如下:
- 右键单击有问题的项目。
- 选择结果菜单底部的“属性”。
- 展开C / C ++ Geneeral
- 选择路径和符号
- 在符号下添加违规符号(保留空白值)
这对我们起了作用。 我们现在已经恢复了我们软件的完全可追溯性。
您可以为#defines创建一个头文件,用于Eclipse不知道的事情。 然后,作为构建的一部分,它使用该头文件的空版本,因此它实际上不使用这些定义。