Gesendet: Sonntag, 23. Dezember 2012 um 11:10 Uhr Von: "Michael Schwendt" mschwendt@gmail.com An: packaging@lists.fedoraproject.org Betreff: Re: [Fedora-packaging] guayadeque pkgconfig question On Sun, 23 Dec 2012 00:02:17 +0100 (CET), Martin Gansser wrote:
prefix=/usr libdir=/usr/lib64 WXSQLITE_MINOR_VERSION=2.8
If this value is needed only in one place, isn't a variable overhead and reduces readability? Rather I would make your wxsqlite3 spec file substitute the minor version in the .pc file (e.g. using "sed -i") when creating it.
Libs: -L${libdir} -lwxcode_gtk2u_wxsqlite3-${WXSQLITE_MINOR_VERSION} -lgdk_pixbuf-2.0
The -L${libdir} is ignored, since default libdir is a standard search path.
pkg-config --libs wxsqlite3 gives now the following:
-lwxcode_gtk2u_wxsqlite3-2.8 -lgdk_pixbuf-2.0
Why would linking with wxsqlite3 strictly require linking with gdk-pixbuf2? wxsqlite3 is linked with that library already, btw. The .pc file would be incomplete, too, because of its empty Requires line => no dep on gdk-pixbuf-2.0
the file /usr/lib64/pkgconfig/wxsqlite3.pc looks now as following and work for the compilation. Is this ok now ?, then i will submit a new wxsqlite3.pc file upstream.
prefix=/usr libdir=/usr/lib64 includedir=/usr/include
Name: wxsqlite3 Description: C++ wrapper around the SQLite 3.x database URL: http://wxcode.sourceforge.net/components/wxsqlite3/ Version: 3.0.1
Libs: -L${libdir} -lwxcode_gtk2u_wxsqlite3-2.8 Cflags: -I${includedir}/wx
finally the link loader had issued the following message:
/bin/ld: CMakeFiles/guayadeque.dir/iPodMedia.o: undefined reference to symbol 'gdk_pixbuf_save_to_buffer' /bin/ld: note: 'gdk_pixbuf_save_to_buffer' is defined in DSO /lib64/libgdk_pixbuf-2.0.so.0 so try adding it to the linker command line /lib64/libgdk_pixbuf-2.0.so.0: could not read symbols: Invalid operation
The full output for the gcc/ld invocation would be relevant here to examine the linker options.
If something in guayadeque fails to link because it needs libgdk_pixbuf2, it becomes necessary to find out where to fix it, not just add it blindly to wxsqlite3.
guayadeque's src/iPodMedia.cpp accesses the gdk-pixbuf API, for example. => wxsqlite3 is the wrong place where to link the missing lib
I need to investigate further