用于外部基于gcc的构建器的Eclipse CDT Error Parser

时间:2010-03-17 20:57:05

标签: c++ eclipse eclipse-cdt

据我所知,CDT 7将包含正则表达式错误解析器,但我现在正在使用CDT 6.

我有一个外部CDT构建器,它只调用一个shell脚本来触发我的构建(基于Jam)。构建使用GCC,错误和警告流式传输到Console视图,但当然没有错误解析器正在查看它,因此我的Problems视图中没有任何内容。

有没有办法配置CDT在我的控制台输出上使用它的GCC扫描程序来填充Problems视图? GCC解析器已启用,它只是没有查看我的输出。

1 个答案:

答案 0 :(得分:3)

我不确定这个问题是否仍然存在,但以下解决方案应该可以填充问题视图:

1)在CDT中创建一个空的C ++ makefile(让我们称之为solution1

2)从项目的上下文菜单(在Project Explorer中)选择"导入......"

3)在"导入"向导选择"通用/文件系统",单击"下一步"并选择您的源目录。不幸的是,CDT 6不允许创建对CDT 7等文件的引用。相反,它会将所有源复制到项目工作区中的位置。因此,您导入的最顶层目录应包含Jamroot。不要忘记在导入拨号日志中检查所有必要文件和文件夹的所有框。

作为Import的一个更优雅的替代方法,你可以在eclipse项目中创建一个Folder并将其链接到包含必要的Jamfile 的源文件夹 - 感谢Vanuan的提示。

添加文件后打开项目属性并执行以下更改:

4)确保在Builders页面上选择了CDT Builder和Scanner Configuration Builder。对于CDT Builder属性,我建议选择除"自动构建期间的所有选项"

5)" C / C ++ Build"页面取消选中"使用默认构建命令"并加入类似" $ {HOME} /boost.build/bin/bjam"的内容。在"建立位置"您应该将具有必要的jamfile的文件夹放在项目层次结构中。例如," ${workspace_loc:/solution1/Server}"

6)切换到"行为"选项卡并为"构建(增量)"添加必要的bjam参数;和"清洁"选项。取消选中"构建资源保存(自动构建)"

7)在" C / C ++构建/设置/错误解析器"选择所有必要的解析器。其他所有内容都应保持默认状态。

之后你应该好好去。

如果您的源代码树中有多个项目,并且您使用了"导入"方法,为每个项目创建单独的构建配置并指定相应的"构建位置"他们的价值观。我使用CDT 7,因为它允许导入对源文件夹的引用而不是创建物理副本,我只需在工作区中为每个目标Jamfiles创建一个单独的eclipse项目。在CDT 6中,如果您添加了链接文件夹而不是导入源,它也会起作用。