3

目前,我们正在考虑将我们的开发环境从 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。

对此的任何帮助(我知道我们不能成为唯一遇到此问题的人)将不胜感激。

4

2 回答 2

3

我们在 header 指令中尝试了#defines,但由于项目的大小以及文件的绝对数量,结果证明这是一种不太实用的方法。

围绕 Eclipse 工具,我们找到了一个适合我们的解决方案,详细信息如下:

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

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

于 2009-02-17T14:34:59.010 回答
0

您可以为 Eclipse 不知道的内容创建一个包含在#defines 中的头文件。然后作为构建的一部分,让它使用该头文件的空版本,因此它实际上并不使用这些定义。

于 2009-02-12T18:53:40.470 回答