我刚开始使用NetBeans构建一些cpp项目。通过放置
来编写代码似乎相对容易$$(pkg-config --cflags --libs gtk+-2.0)
进入C ++编译器"其他选项"在IDE中。有了这个,代码完全没有任何问题,但代码帮助功能并不高兴。它抱怨它无法找到包含文件,然后当然会抱怨导出该标头或其依赖链中定义的任何函数的所有代码行。
我可以通过将整个包含链放入C ++编译器"包含目录"来解决这个问题。在IDE中,我能够通过运行上面的pkg-config行来解决这个问题:
/usr/include/gtk-3.0;/usr/include/atk-1.0;/usr/include/at-spi2-atk/2.0;/usr/include/pango-1.0;/usr/include/gio-unix-2.0/;/usr/include/cairo;/usr/include/gdk-pixbuf-2.0;/usr/include/glib-2.0;/usr/lib64/glib-2.0/include;/usr/include/harfbuzz;/usr/include/freetype2;/usr/include/pixman-1;/usr/include/libpng15;/usr/include/libdrm
这似乎是多余的,因为正如我所说,它已经编好了。
所以我的问题是:我是以正确的方式做到这一点还是只使用pkg-config更容易让两个部分同时开心?如果pkg-config不是最佳解决方案,那么是什么?
我使用的是NetBeans 8和GNU工具。
此外,我不确定将所有包含文件夹放在NetBeans全局选项中是否明智,因为我有gtk2和gtk3,每个都有一个gtk / gtk.h文件。