Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Eclipse CDT自定义编译器错误解析插件_C++_C_Eclipse_Eclipse Plugin_Eclipse Cdt - Fatal编程技术网

C++ Eclipse CDT自定义编译器错误解析插件

C++ Eclipse CDT自定义编译器错误解析插件,c++,c,eclipse,eclipse-plugin,eclipse-cdt,C++,C,Eclipse,Eclipse Plugin,Eclipse Cdt,我在Eclipse CDT中使用一个不常见的C编译器。我有一个很好的make文件设置,但我希望IDE与编译器的错误/警告输出集成 有人知道我可以采取什么步骤来编写插件来解析/支持我的编译器输出吗?我认为这应该很容易,但要想知道从哪里开始是有障碍的。如果Eclipse允许我使用New->Compiler Error Parser插件或类似的东西,那就太好了 谢谢没那么简单 首先,确保安装了EclipsePDE(插件开发环境)和CDTSDK。如果没有,那么您需要告诉Eclipse下载它们(帮助->安

我在Eclipse CDT中使用一个不常见的C编译器。我有一个很好的make文件设置,但我希望IDE与编译器的错误/警告输出集成

有人知道我可以采取什么步骤来编写插件来解析/支持我的编译器输出吗?我认为这应该很容易,但要想知道从哪里开始是有障碍的。如果Eclipse允许我使用New->Compiler Error Parser插件或类似的东西,那就太好了


谢谢

没那么简单

首先,确保安装了EclipsePDE(插件开发环境)和CDTSDK。如果没有,那么您需要告诉Eclipse下载它们(帮助->安装新软件)

然后,创建一个新的插件项目。在其Extensions选项卡中,针对point org.eclipse.cdt.core.ErrorParser添加一个新的扩展。然后,您必须编写一些java代码来实际实现它。幸运的是,PDE使元工作相对简单;你把你的类名放在适当的框中,点击“class*”超链接,它会为你创建一个骨架类

我建议您获取CDT的源代码,并查看GCCErrorParser.java,以说明您需要做的事情


最后,当您准备好测试它时,设置Eclipse应用程序类型的调试配置。(这将产生第二个Eclipse实例;它必须使用另一个工作台。)进入C项目的属性、设置面板、错误分析器选项卡,并打开闪亮的新错误分析器。

在CDT 7中,将包含一个正则表达式错误分析器,这将使这类事情更加简单。这本书有一些细节


CDT7.0要到6月底才会发布,但您可以尝试里程碑构建,看看它是否符合您的要求。这些可以下载。您还需要一个与eclipse平台相匹配的里程碑版本。

我正在使用这个插件:

这样行吗

(.*)\((\d+)\)\s:\sError(.*)
档案:$1 行:2美元 描述:3美元


在EclipseCDT7.0.1中,srkos非常简单。只需添加一个新的错误解析器 在窗口->首选项->C/C++构建->设置下 并添加包含3个组的正则表达式:文件名、行号和错误描述

例如,对于Visual Studio编译器,regexp将是:

(.*?)\((\d*)\)\s:\s(.*error.*)

$1 - filename
$2 - line number
$3 - error description

IBM已经发布了一个分步指南,介绍如何编写自己的CDT解析器,该指南是可用的

未来校对的相关谷歌搜索应为:

在CDT 8中,此功能不需要插件。我支持几种编译器,并使用简单的正则表达式构建系统。见截图。在将正则表达式复制到此对话框之前,可以直接在控制台输出中测试正则表达式。如果您需要在机器之间移动它们,那么生成的解析器将存储在您的工作区中的.metadata/.plugins/org.eclipse.cdt.core

下。遗憾的是,它不适用于外部构建工具。答案有点过时。答案有点过时。链接不起作用。如果您提供了一个标题,我可以自己用谷歌搜索它。@sadikgoogle“IBMEclipse编写cdt错误解析器”,第一个点击。用工作链接更新了答案。