libnotify issue on F14 and rawhide

Pavel Alexeev (aka Pahan-Hubbitus) forum at
Fri Sep 24 10:33:49 UTC 2010

 24.09.2010 13:27, Mamoru Tasaka пишет:
> Pavel Alexeev (aka Pahan-Hubbitus) wrote, at 09/24/2010 06:11 PM +9:00:
>>   I have packaged xneur, which on review [1] and its build fine on Fedora 12 and 13. On Fedora 14 it is failed [2] with error:
>> /usr/include/libnotify/notification.h:28:21: fatal error: gtk/gtk.h: No such file or directory
>> I try figure out what happened and go step by step add includes in CFLAGS like:
>> make %{?_smp_mflags} CFLAGS="%{optflags} -I%{_includedir}/gtk-2.0"
>> after many attempts and googling I finally arrived to:
>> make %{?_smp_mflags} CFLAGS="%{optflags} %( pkg-config --cflags --libs gtk+-2.0 )"
>> which work like a charm.
>> But I can't understand why I should provide it manually
>> and why it does not required in previous releases?
>> I slightly dig more and found it happened on linking with libnotify library. And finaly result:
>> On Fedora 13:
>> $ pkg-config --cflags "libnotify >= 0.4.0"
>> -pthread -I/usr/include/gtk-2.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/lib/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12
>> On Fedora 14 (
>> $ pkg-config --cflags "libnotify >= 0.4.0"
>> -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include
>> Should I fill bug on libnotify or it is the expected behavior?
>> [1]
>> [2] <>
> This change on libnotify is intentional.
How I should deal with it?
Is it normal add such parameters in make or in configure (%configure
LIBNOTIFY_CFLAGS="%( pkg-config --cflags "libnotify >= 0.4.0" gtk+-2.0
)" LIBNOTIFY_LIBS="%( pkg-config --libs "libnotify >= 0.4.0" gtk+-2.0 )")?

And what is also very strange and interesting. When build failed with
"fatal error: gtk/gtk.h: No such file or directory" if I go in builddir
and manually invoke last command:
gcc -DHAVE_CONFIG_H -I. -I../.. -I../../lib/config -I../../lib/misc
-I../../lib/lib -Wall -Wextra -Werror -g0 -std=gnu99 -fPIC -pthread
-I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0
-I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -I/usr/include
-pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
-I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic -c sound.c -fPIC -DPIC -o

compilation fine done without any problem. How it find all includes? And
why it is not happened in rpmbuild process?
> Regards,
> Mamoru

More information about the devel mailing list