1

几天来,我一直在尝试让一个简单的测试用例(来自 IUP 文档示例的matrix.wlua)正常工作。

IUPLua 不在 LuaRocks 中,所以我必须安装 LuaDist 并修改我的路径;然后当我尝试编译 iup(包括标志-DGTK2_INCLUDE_DIRS=/usr/include/gdk-pixbuf-2.0;/usr/include/glib-2.0;/usr/lib/glib-2.0/include;/usr/include/gtk-2.0;/usr/lib/gtk-2.0/include;/usr/include/gtk-2.0;/usr/include/cairo;/usr/include/pango-1.0;/usr/include/atk-1.0以便正确包含 gdk-pixbuf 标头)时,几乎每个正在编译的与 GTK 相关的文件都显示以下错误消息:

[ 35%] Building C object CMakeFiles/iup.dir/src/gtk/iupgtk_common.c.o
In file included from /usr/include/gtk-2.0/gdk/gdkcairo.h:28:0,
                 from /usr/include/gtk-2.0/gdk/gdk.h:33,
                 from /usr/include/gtk-2.0/gtk/gtk.h:32,
                 from /home/archie/luadist/tmp/iup-3.5/LuaDist-iup-203b27f/src/gtk/iupgtk_common.c:12:
/usr/include/gtk-2.0/gdk/gdkpixbuf.h:43:43: error: unknown type name ‘GdkPixbuf’

在我的系统中进行的一些挖掘包括grin确定 GdkPixBuf 文档中列出的声明typedef struct _GdkPixbuf GdkPixbuf实际上并不存在于我的包管理器告诉我由 gdk-pixbuf 安装的任何文件中的文件。

我的下一个尝试是下载 IUP dist 并手动禁用CMakeLists.txt文件中的选项以使用 GTK2。然后编译,链接到 OpenMotif,提供的 C 程序“iuptest”运行良好。CDLua 和 IMLua 也完美编译并安装到 /usr/local/lib/lua。但是,IUPLua 的编译因以下错误消息而停止:

[ 98%] Building C object CMakeFiles/iupluaweb.dir/srclua5/il_webbrowser.c.o
make[2]: *** No rule to make target `/usr/lib/libiupweb.so', needed by `iupluaweb.so'.  Stop.

我对 CMake 或 C 不够熟悉,不知道如何解决这个问题,而且我真的不敢相信这样的库会有这样的缺陷,而没有这些错误消息的相关搜索引擎结果(没有)。我认为这些磨难可能是我的一些错误造成的。关于错误可能是什么和/或如何解决它的任何想法?

4

0 回答 0