GNOME Bugzilla – Bug 577863
empathy pkg-config file missing libcanberra-gtk requires
Last modified: 2009-11-13 17:20:42 UTC
Trying to build nautilus-sendto at http://koji.fedoraproject.org/koji/taskinfo?taskID=1275208 In file included from empathy.c:38: /usr/include/libempathy-gtk/empathy-ui-utils.h:38:26: error: canberra-gtk.h: No such file or directory In file included from empathy.c:38: /usr/include/libempathy-gtk/empathy-ui-utils.h:142: error: expected declaration specifiers or '...' before 'ca_finish_callback_t' The pkg-config file needs to have a requires on libcanberra-gtk.
After taking to hadess, it appears that it needs to have a non-private requires on libcanberra-gtk, since libcanberra-gtk header is exposed in public headers.
Created attachment 132127 [details] [review] Adds libcanberra-gtk to the requires list This is a trivial patch to add libcanberra-gtk to the requires list in the libempathy-gtk.pc file.
We also expose glib/mc/etc API but it is in Requires.private... I don't remember what was the reason...
I added to Require.private, it seems to be the right place. Thanks for the patch!
Requires.private is for libraries that are needed for linking, but not compilation. Given that libcanberra-gtk is used from public headers, it needs to be in the Requires.
I don't think that's true, see http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/953 We changed .pc files in empathy to always use Require.private for other libraries exposed in empathy's API.
libempathy and libempathy-gtk have been dropped in master; closing this bug.