我使用 aptitude 在 Ubuntu 13.04 上安装了 gtkmm 3(我喜欢 aptitude,因为它会记住您想要删除它时安装的内容):
sudo aptitude install libgtkmm-3.0-dev --with-recommends
使用 codelite 5.1.2 和默认的 gtk++ 工具链,在我的编译器中包含我添加的路径:
/usr/include/gtkmm-3.0 - gtkmm.h 的路径
我尝试在使用 GTKMM 编程中构建第一个示例应用程序:
#include <gtkmm.h>
int main ( int argc, char *argv[] )
{
Gtk::Main kit ( argc, argv );
Gtk::Window window;
Gtk::Main::run ( window );
return 0;
}
在查找了来自 gtkmm.h 的一些“未找到包含文件”错误之后,其中包括整个 gtkmm 框架,我的编译器包含路径现在看起来像这样:
/usr/include/gtkmm-3.0
/usr/include/glibmm-2.4
/usr/lib/i386-linux-gnu/glibmm-2.4/include
/usr/include/glib-2.0
所有的地狱都从glib.h中解脱出来:
/bin/sh -c 'make -j 4 -e -f "Calendars_wsp.mk"' ----------构建项目:[CalendarsGUI - 调试]---------- ........... /gtkmm-3.0 -I/usr/include/glibmm-2.4 -I/usr/lib/i386-linux-gnu/glibmm-2.4/include -I//usr/include/glib-2.0 在 //usr/include/glib-2.0/glib/gtypes.h:36:0 包含的文件中, 来自 //usr/include/glib-2.0/glib/galloca.h:34, 来自 //usr/include/glib-2.0/glib.h:32, 来自 /usr/include/glibmm-2.4/glibmm/thread.h:46, 来自 /usr/include/glibmm-2.4/glibmm.h:87, 从 /usr/include/gtkmm-3.0/gtkmm.h:87, 来自 main.cpp:16: ***//usr/include/glib-2.0/glib/gversionmacros.h:179:2: 错误:#error "GLIB_VERSION_MIN_REQUIRED 必须 >= GLIB_VERSION_2_26"*** 在 //usr/include/glib-2.0/glib/galloca.h:34:0 包含的文件中, 来自 //usr/include/glib-2.0/glib.h:32, 来自 /usr/include/glibmm-2.4/glibmm/thread.h:46, 来自 /usr/include/glibmm-2.4/glibmm.h:87, 从 /usr/include/gtkmm-3.0/gtkmm.h:87, 来自 main.cpp:16: ***//usr/include/glib-2.0/glib/gtypes.h:448:2: error: #error unknown ENDIAN type ………… make: *** [全部] 错误 2 2 个错误,2 个警告***
(我在尝试使用 gtkmm 2.4 时也遇到了同样的问题)
显然我在这里遗漏了一些东西。我究竟做错了什么?我还需要做什么来构建 gtkmm 项目?