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工具,我们找到了一个适合我们的解决方案,详情如下:

  1. 右键单击有问题的项目。
  2. 选择结果菜单底部的“属性”。
  3. 展开C / C ++ Geneeral
  4. 选择路径和符号
  5. 在符号下添加违规符号(保留空白值)

这对我们起了作用。 我们现在已经恢复了我们软件的完全可追溯性。

您可以为#defines创建一个头文件,用于Eclipse不知道的事情。 然后,作为构建的一部分,它使用该头文件的空版本,因此它实际上不使用这些定义。