Eclipse makefile项目中的Gtkmm:"无法解析"

时间:2018-02-11 16:58:17

标签: eclipse gtk eclipse-cdt gtkmm

我正在尝试在Ubuntu 16.04上迁移一个使用Gtkmm3.0到Eclipse(Oxygen)的自定义C ++项目。该项目有自己的Makefile,可以在Eclipse中从终端构建。到目前为止我无法做到的是告诉索引器关于Gtkmm,我得到了很多这些(这非常烦人):

enter image description here

当我将鼠标悬停在小红虫上时,它说:

Type 'Cairo::RefPtr<Cairo::Context>' could not be resolved.

我已经做了很多谷歌搜索,到目前为止没有找到任何结果,因为所有答案似乎都假设项目的构建工具由Eclipse管理(请参阅thisthis,例)。在我的情况下,我有一个 makefile项目而不是可执行项目,因此我无法使用某些选项。例如,第一个链接说明了如何配置构建器:

  

我们必须添加所有这些目录。在Eclipse上,选择Project-&gt; Properties菜单选项。从Tool Settings选项卡中选择C / C ++ Build-&gt; Settings属性页和GNU C ++ Compiler-&gt; Directories。现在我们必须添加所有目录。在我的情况下(Makefile项目),只有两个选项卡可用:二进制解析器和错误解析器。

如何告诉Eclipse索引器我使用的是Gtkmm3.0?

1 个答案:

答案 0 :(得分:0)

找到适合我的解决方案:

  1. 打开终端并输入:

    pkg-config --cflags gtkmm-3.0

  2. 您将看到包含目录的列表(以-I开头)。这些是您要在Eclipse中添加的目录,以便它可以在编辑器中找到Gtkmm符号。

    1. 在Eclipse中,转到:

      Project -> Properties -> C++ General -> Paths and Symbols

    2. Includes标签中,选择GNU C++。你需要在这里添加添加步骤1中找到的包含目录。没有自动的方法来执行此操作,你必须逐个输入它们。

      可以节省一些时间的一个技巧是手动编辑Eclipse项目设置XML文件,并直接在XML文件中添加包含目录。到最后,你应该有这样的东西:

      GUI final

      这样做对我来说,希望这有帮助!

相关问题