GNOME Bugzilla – Bug 709302
Error compile in the linkerin background panel
Last modified: 2013-10-18 22:00:45 UTC
I have gtk+ from git and gnome-desktop from git, and when I try to build gnome-control-center from git, I get the following error: make[3]: Entering directory `/pkg/gnome-control-center-git/src/gnome-control-center/panels/background' make all-am make[4]: Entering directory `/pkg/gnome-control-center-git/src/gnome-control-center/panels/background' /bin/sh ../../libtool --tag=CC --mode=link gcc -Wall -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wmissing-parameter-type -Wold-style-declaration -Woverride-init -Wtype-limits -Wuninitialized -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -g -fvar-tracking-assignments -Wp,-D_FORTIFY_SOURCE=2 -Wno-strict-aliasing -Wno-sign-compare -lgthread-2.0 -pthread -lgio-2.0 -lxml2 -lgnome-desktop-3 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgio-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -Wl,-O1,--sort-common,--as-needed,-z,relro -o test-chooser-dialog test-chooser-dialog.o libbackground-chooser.la -lm libtool: link: gcc -Wall -Wclobbered -Wempty-body -Wignored-qualifiers -Wmissing-field-initializers -Wmissing-parameter-type -Wold-style-declaration -Woverride-init -Wtype-limits -Wuninitialized -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wsign-compare -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 -g -fvar-tracking-assignments -Wp,-D_FORTIFY_SOURCE=2 -Wno-strict-aliasing -Wno-sign-compare -pthread -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z -Wl,relro -o test-chooser-dialog test-chooser-dialog.o -Wl,-O1,--as-needed -lgthread-2.0 -lxml2 -lgnome-desktop-3 /usr/lib/libgtk-3.so /usr/lib/libgdk-3.so -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgio-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 ./.libs/libbackground-chooser.a -lm -pthread /usr/bin/ld: ./.libs/libbackground-chooser.a(cc-background-item.o): undefined reference to symbol 'gdk_color_equal' /usr/bin/ld: note: 'gdk_color_equal' is defined in DSO /usr/lib/libgdk-3.so so try adding it to the linker command line /usr/lib/libgdk-3.so: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status make[4]: *** [test-chooser-dialog] Error 1 make[4]: Leaving directory `/pkg/gnome-control-center-git/src/gnome-control-center/panels/background' make[3]: *** [all] Error 2 make[3]: Leaving directory `/pkg/gnome-control-center-git/src/gnome-control-center/panels/background' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/pkg/gnome-control-center-git/src/gnome-control-center/panels' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/pkg/gnome-control-center-git/src/gnome-control-center' make: *** [all] Error 2
Created attachment 256726 [details] [review] background: Fix the build with some linkers
gdk-3.0 is already in the libs added by gtk+-3.0, so I don't think that patch does anything. I've already tried doing that, as well as various changes to the background Makefile.am. The only thing that worked for me was not building the test at all.
Created attachment 257409 [details] [review] background: Fix test-chooser-dialog build with some linkers List missing libs for the libbackground-chooser.la convenciene library.
The patch above is untested by me, can someone check if it fixes the issue, please?
Kalev, your patch works for me.
Attachment 257409 [details] pushed as f08a225 - background: Fix test-chooser-dialog build with some linkers
Applying this patch solves one problem and makes visible next one: /.libs/libbackground-chooser.a(cc-background-chooser-dialog.o): In function `cc_background_chooser_dialog_init': /home/users/builder/rpm/BUILD/gnome-control-center-3.10.1/panels/background/cc-background-chooser-dialog.c:282: undefined reference to `bg_flickr_source_new'