我无法链接我的应用程序:我收到“未定义的对符号‘gdk_pixbuf_major_version’的引用”
我是一名 WIN32 程序员,这是我第一次涉足 Linux。我的目标设备是 Ubuntu xenial,GTK+ 3.18.9。从 gdk_pixbuf_features.h 中,Gdk-Pixbuf 版本是 2.32.2。
我有一个静态库 (_rUtilitiesLinuxx64) 可以执行此操作: GdkPixBuffMajorRunTime=gdk_pixbuf_major_version; 静态库构建得很好。
我有一个链接到 _rUtilitiesLinuxx64 的应用程序 (_rUtilitiesTestLinux)。
我的假设是 gdk_pixbuf_major_version 实际上在 Gdk_Pixbuf 库中(/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so)
当我尝试构建我的应用程序时,我得到一个未定义的对“gdk_pixbuf_major_version”的引用
似乎 gdk_pixbuf_major_version 不包含在 libgdk_pixbuf-2.0 中?
Invoking ld
1> g++ -o "/home/rob/projects/_rUtilitiesTestLinux/bin/x64/Debug/_rUtilitiesTestLinux.out" -Wl,--no-undefined -Wl,-L/home/rob/projects/_rUtilitiesLinux/bin/x64/Debug -Wl,-z,relro -Wl,-z,now -Wl,-z,noexecstack
/home/rob/projects/_rUtilitiesTestLinux/obj/x64/Debug/main.o
/home/rob/projects/_rUtilitiesTestLinux/obj/x64/Debug/TestClass.o
/usr/lib/x86_64-linux-gnu/libgtk-3.so
/usr/lib/x86_64-linux-gnu/libgdk-3.so
/usr/lib/x86_64-linux-gnu/libgio-2.0.so
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so
/usr/lib/x86_64-linux-gnu/libpthread.so
/usr/lib/x86_64-linux-gnu/libglib-2.0.so
/usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so
-l_rUtilitiesLinuxx64
1> /usr/bin/ld:
/home/rob/projects/_rUtilitiesLinux/bin/x64/Debug/lib_rUtilitiesLinuxx64.a(_rGraphwSystem.o):/usr/bin/ld:
/home/rob/projects/_rUtilitiesLinux/bin/x64/Debug/lib_rUtilitiesLinuxx64.a(_rGraphwSystem.o): undefined reference to symbol 'gdk_pixbuf_major_version'
1> /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so: error adding symbols: DSO missing from undefined reference to symbol 'gdk_pixbuf_major_version'
1> /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so: error adding symbols: DSO missing from command line
1> command line
1> collect2: error: ld returned 1 exit status
1> collect2: error: ld returned 1 exit status
1> /usr/bin/ld : error : undefined reference to symbol 'gdk_pixbuf_major_version'
1> /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so : error : DSO missing from command line
1> collect2 : error : ld returned 1 exit status
那么,gdk_pixbuf_major_version 在哪里呢?