【发布时间】:2017-04-11 09:26:36
【问题描述】:
我使用代码块和 GTK 3.x 版本。安装后,我想尝试一下。出现以下构建消息
找不到-lgtk-win32-2.0
谁能帮帮我。谢谢你
【问题讨论】:
-
如果您使用的是
GTK 3.x version,那么您可能需要为 3.0 版本提供库选项。-lgtk-win32-2.0看起来会尝试使用 GTK 2.0
标签: c gtk codeblocks gtk3 build-error
我使用代码块和 GTK 3.x 版本。安装后,我想尝试一下。出现以下构建消息
找不到-lgtk-win32-2.0
谁能帮帮我。谢谢你
【问题讨论】:
GTK 3.x version,那么您可能需要为 3.0 版本提供库选项。 -lgtk-win32-2.0 看起来会尝试使用 GTK 2.0
标签: c gtk codeblocks gtk3 build-error
如您所见,默认情况下,codeblocks 配置为使用 Gtk+-2.0:
gcc -pthread -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/libpng15 -Wall -g -c /root/test/main.c -o obj/Debug/main.o
g++ -o bin/Debug/test obj/Debug/main.o -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfontconfig -lgobject-2.0 -lglib-2.0 -lfreetype
所以,你需要告诉它切换到Gtk+-3.0。到达那里并不容易。在项目中,选择属性:
在那里,转到项目的构建选项,在底部:
然后,切换到链接器设置:
右侧是 pkg-config 调用,用于获取您可以在此答案顶部的 gcc 调用中看到的选项。将2.0 更改为3.0 将调用Gtk+-3.0 的选项。
注意:编辑时要小心保留“反引号”(反“重音”或单引号)。
还请注意,Gtk 库确实称为gtk+,因此版本3.0 称为gtk+-3.0(例如,用于pkg-config)。
应该可以的。
【讨论】:
pkg-config gtk+2.0 --libs 但它不起作用
gtk+-3.0,而不是gtk-2.0。那是gtk,然后是加号(+),然后是破折号(-),然后是3.0。
gtk,并在很久以前变成了gtk+,当时它已被转换为更加面向对象。破折号作为包名称和包版本之间的分隔符,GTK 的 1.x、2.x 和 3.x(以及不久的将来,4.x)版本可以并行安装。