我使用gtkmm在C++中编写Eclipse CDT。我已设法设置Eclipse,以便通过将pkg-config gtkmm-3.0 --cflags --libs
添加到编译器选项来正确编译代码。所以它运行,并工作。但在编辑器中,一切与红色相关的gtk相关,当我将鼠标悬停在这些部分上时,它会显示如下内容:Type 'Gtk::Main' could not be resolved
。所以我可以像这样编写代码,但是在autocompletion不工作并且屏幕上出现红线的情况下真的很痛苦。我该如何解决这个问题?Eclipse CDT&gtkmm:“... could not be resolved。”,但编译并运行
我的代码看起来是这样的:
#include <gtkmm-3.0/gtkmm.h>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
Gtk::Main kit(true);
Gtk::Box* box = new Gtk::Box();
...
不过,我不认为这是相关的代码。因为它在Code :: Blocks中可以正常工作,代码完成和所有。但是我比Eclipse更喜欢C :: B。
//丹尼尔
非常感谢!它似乎完美地工作。但是,有没有简单快捷的方法来添加它们?我是否必须对所有gtkmm项目重复此操作? –
对不起,我还没有找到更好的方法自动或轻松地完成它。 – ptomato
您可以像回答中建议的那样展开'pkg-config --cflags gtkmm-3.0',并在eclipse的XML项目文件中手动添加输出。使用矩形选择('Shift + Alt + A'启用),它可以做得非常快。 – BobMorane