h 大家好。在我的 Linux 机器上,我使用 Glade 3 生成一个 XML 文件。我成功地将 XML 文件嵌入到程序中,并使用以下命令编译了 GTK+ 程序:
gcc -Wall -g `pkg-config --cflags --libs gtk+-2.0` prog.c
该程序完全按照我的意愿运行。但是,在 Windows 上使用 Cygwin,我无法编译它。我已经安装了 MinGW 和 Windows GTK+ 2.0 包。它们都在 Z 驱动器的根目录上。pkg-config 工作正常,它向 GCC 发送了几个编译器和链接器选项。我没有收到任何“文件不存在”错误,并且我设置了 $PATH。我收到了大约十几个“未定义的引用”错误。每次调用 GTK 函数时都会出错。这是 pkg-config 输出的内容:
-mms-bitfields -IZ:/GTK+/include/gtk-2.0 -IZ:/GTK+/lib/gtk-2.0/include -IZ:/GTK+/include/atk-1.0 -IZ:/GTK+/include/cairo -IZ:/GTK+/include/pango-1.0 -IZ:/GTK+/include/glib-2.0 -IZ:/GTK+/lib/glib-2.0/include -IZ:/GTK+/include/libpng12 -LZ:/GTK+/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgio-2.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl
我还应该提到我能够使用 Windows 版本的 Glade 3 来生成相同的 XML 文件。我究竟做错了什么?