Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
FAS account: tartina
On 2/3/19 12:31, Guido Aulisi wrote:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Not sure what changed, but if you are using a symbol from a library, the right thing to do is to list it in the 'pkgconf --libs' line so that you can be sure that you are linking against it and not relying on another library pulling it in.
Just add gobject-2.0 to the 'pkgconf --libs' line and that should fix the issue you are seeing, hopefully.
Hope this helps, Kalev
Il giorno dom 3 feb 2019 alle ore 23:17 Kalev Lember kalevlember@gmail.com ha scritto:
On 2/3/19 12:31, Guido Aulisi wrote:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Not sure what changed, but if you are using a symbol from a library, the right thing to do is to list it in the 'pkgconf --libs' line so that you can be sure that you are linking against it and not relying on another library pulling it in.
Just add gobject-2.0 to the 'pkgconf --libs' line and that should fix the issue you are seeing, hopefully.
Thank you for your suggestion, I added -lgobject-2.0 -lglib-2.0 to LDFLAGS and the build was ok. I don't want to modify or patch upstream's Makefile...
Hope this helps, Kalev
It helped for sure! I will search for root problem ASAP, I think I'll have to install a full rawhide system to do that.
Ciao Guido
Guido Aulisi wrote on 2019/02/03 20:31:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
Apparently this is because rawhide pango.pc does not add -lglib-2.0 when called with pkgconf --libs:
F-29 $ rpm -q pango pango-1.42.4-2.fc29.x86_64 $ pkgconf --libs pango -lpango-1.0 -lgobject-2.0 -lglib-2.0
F-30 $ rpm -q pango pango-1.43.0-1.fc30.x86_64 $ pkgconf --libs pango -lpango-1.0
pango-1.43.0-1.fc30.x86_64 pango.pc shows: ---------------------------------- Name: Pango Description: Internationalized text handling Version: 1.43.0 Requires.private: glib-2.0 >= 2.38.0, gobject-2.0 >= 2.38.0, fribidi >= 0.19.7, libthai >= 0.1.9, harfbuzz >= 1.4.2, fontconfig >= 2.11.91, freetype2, xrender, xft >= 2.0.0, cairo >= 1.12.10 Libs: -L${libdir} -lpango-1.0 Libs.private: -lm ---------------------------------- So -lglib-2.0 is moved to Requires.private.
I guess this is due to this commit: https://gitlab.gnome.org/GNOME/pango/commit/86855b6a458fd9b82d246f723a7e3c9c... It seems to be doing some refactoring (with adding some fallback), and "requires: gobject_dep," line is deleted.
Currently I am not sure if it is intentional or accidental.
Regards, Mamoru
Il giorno lun 4 feb 2019 alle ore 13:14 Mamoru TASAKA mtasaka@fedoraproject.org ha scritto:
Guido Aulisi wrote on 2019/02/03 20:31:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
Apparently this is because rawhide pango.pc does not add -lglib-2.0 when called with pkgconf --libs:
F-29 $ rpm -q pango pango-1.42.4-2.fc29.x86_64 $ pkgconf --libs pango -lpango-1.0 -lgobject-2.0 -lglib-2.0
F-30 $ rpm -q pango pango-1.43.0-1.fc30.x86_64 $ pkgconf --libs pango -lpango-1.0
pango-1.43.0-1.fc30.x86_64 pango.pc shows:
Name: Pango Description: Internationalized text handling Version: 1.43.0 Requires.private: glib-2.0 >= 2.38.0, gobject-2.0 >= 2.38.0, fribidi >= 0.19.7, libthai >= 0.1.9, harfbuzz >= 1.4.2, fontconfig >= 2.11.91, freetype2, xrender, xft >= 2.0.0, cairo >= 1.12.10 Libs: -L${libdir} -lpango-1.0 Libs.private: -lm
So -lglib-2.0 is moved to Requires.private.
I guess this is due to this commit: https://gitlab.gnome.org/GNOME/pango/commit/86855b6a458fd9b82d246f723a7e3c9c... It seems to be doing some refactoring (with adding some fallback), and "requires: gobject_dep," line is deleted.
Currently I am not sure if it is intentional or accidental.
Ok, now I understand why it does not work in rawhide
Regards, Mamoru
Thank you very much
Ciao Guido
Guido Aulisi wrote on 2019/02/04 22:23:
Il giorno lun 4 feb 2019 alle ore 13:14 Mamoru TASAKA mtasaka@fedoraproject.org ha scritto:
Guido Aulisi wrote on 2019/02/03 20:31:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
Apparently this is because rawhide pango.pc does not add -lglib-2.0 when called with pkgconf --libs:
F-29 $ rpm -q pango pango-1.42.4-2.fc29.x86_64 $ pkgconf --libs pango -lpango-1.0 -lgobject-2.0 -lglib-2.0
F-30 $ rpm -q pango pango-1.43.0-1.fc30.x86_64 $ pkgconf --libs pango -lpango-1.0
pango-1.43.0-1.fc30.x86_64 pango.pc shows:
Name: Pango Description: Internationalized text handling Version: 1.43.0 Requires.private: glib-2.0 >= 2.38.0, gobject-2.0 >= 2.38.0, fribidi >= 0.19.7, libthai >= 0.1.9, harfbuzz >= 1.4.2, fontconfig >= 2.11.91, freetype2, xrender, xft >= 2.0.0, cairo >= 1.12.10 Libs: -L${libdir} -lpango-1.0 Libs.private: -lm
So -lglib-2.0 is moved to Requires.private.
I guess this is due to this commit: https://gitlab.gnome.org/GNOME/pango/commit/86855b6a458fd9b82d246f723a7e3c9c... It seems to be doing some refactoring (with adding some fallback), and "requires: gobject_dep," line is deleted.
Currently I am not sure if it is intentional or accidental.
Ok, now I understand why it does not work in rawhide
Regards, Mamoru
Thank you very much
Ciao Guido
... And actually the above change was reverted by the following commit: https://gitlab.gnome.org/GNOME/pango/commit/d0cb6be7431d1a3c711bd45bcf05b346...
i.e. gobject-2.0 got added again as Requires (non-private) for pango.pc , which will appear in pango-1.43.1 .
Regards, Mamoru
On Mon, Feb 4, 2019 at 5:44 PM Mamoru TASAKA mtasaka@fedoraproject.org wrote:
Guido Aulisi wrote on 2019/02/03 20:31:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
Apparently this is because rawhide pango.pc does not add -lglib-2.0 when called with pkgconf --libs:
F-29 $ rpm -q pango pango-1.42.4-2.fc29.x86_64 $ pkgconf --libs pango -lpango-1.0 -lgobject-2.0 -lglib-2.0
F-30 $ rpm -q pango pango-1.43.0-1.fc30.x86_64 $ pkgconf --libs pango -lpango-1.0
pango-1.43.0-1.fc30.x86_64 pango.pc shows:
Name: Pango Description: Internationalized text handling Version: 1.43.0 Requires.private: glib-2.0 >= 2.38.0, gobject-2.0 >= 2.38.0, fribidi >= 0.19.7, libthai >= 0.1.9, harfbuzz >= 1.4.2, fontconfig >= 2.11.91, freetype2, xrender, xft >= 2.0.0, cairo >= 1.12.10 Libs: -L${libdir} -lpango-1.0 Libs.private: -lm
So -lglib-2.0 is moved to Requires.private.
I guess this is due to this commit:
https://gitlab.gnome.org/GNOME/pango/commit/86855b6a458fd9b82d246f723a7e3c9c... It seems to be doing some refactoring (with adding some fallback), and "requires: gobject_dep," line is deleted.
Currently I am not sure if it is intentional or accidental.
I think this commit https://gitlab.gnome.org/GNOME/pango/commit/d0cb6be7431d1a3c711bd45bcf05b346... will revert it back but we need to wait for next upstream pango release.
Parag
Thanks for the investigation, I just back port the patch for Fedora rawhide now.
Peng
On Mon, Feb 4, 2019 at 10:32 PM Parag Nemade panemade@gmail.com wrote:
On Mon, Feb 4, 2019 at 5:44 PM Mamoru TASAKA mtasaka@fedoraproject.org wrote:
Guido Aulisi wrote on 2019/02/03 20:31:
Hi, I'm trying to debug a FTBFS in rawhide:
https://koji.fedoraproject.org/koji/taskinfo?taskID=32412101
Apparently it fails because of library ordering, but it works in f29. g_object_unref is defined in gobject-2.0 and it gets surely added by the 'pkgconf --libs cairo pangocairo pango' command.
Did anything about gobject or glib change in rawhide recently?
Thank you for any help.
Guido
Apparently this is because rawhide pango.pc does not add -lglib-2.0 when called with pkgconf --libs:
F-29 $ rpm -q pango pango-1.42.4-2.fc29.x86_64 $ pkgconf --libs pango -lpango-1.0 -lgobject-2.0 -lglib-2.0
F-30 $ rpm -q pango pango-1.43.0-1.fc30.x86_64 $ pkgconf --libs pango -lpango-1.0
pango-1.43.0-1.fc30.x86_64 pango.pc shows:
Name: Pango Description: Internationalized text handling Version: 1.43.0 Requires.private: glib-2.0 >= 2.38.0, gobject-2.0 >= 2.38.0, fribidi
= 0.19.7, libthai >= 0.1.9, harfbuzz >= 1.4.2, fontconfig >= 2.11.91,
freetype2, xrender, xft >= 2.0.0, cairo >= 1.12.10 Libs: -L${libdir} -lpango-1.0 Libs.private: -lm
So -lglib-2.0 is moved to Requires.private.
I guess this is due to this commit:
https://gitlab.gnome.org/GNOME/pango/commit/86855b6a458fd9b82d246f723a7e3c9c... It seems to be doing some refactoring (with adding some fallback), and "requires: gobject_dep," line is deleted.
Currently I am not sure if it is intentional or accidental.
I think this commit https://gitlab.gnome.org/GNOME/pango/commit/d0cb6be7431d1a3c711bd45bcf05b346... will revert it back but we need to wait for next upstream pango release.
Parag _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-leave@lists.fedoraproject.org Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Peng Wu wrote on 2019/02/11 14:12:
Thanks for the investigation, I just back port the patch for Fedora rawhide now.
Peng
On Mon, Feb 4, 2019 at 10:32 PM Parag Nemade panemade@gmail.com wrote:
I think this commit https://gitlab.gnome.org/GNOME/pango/commit/d0cb6be7431d1a3c711bd45bcf05b346... will revert it back but we need to wait for next upstream pango release.
Parag
Okay, thank you for applying the upstream patch. Actually this fixes at least FTBFS issues for several packages.
Regards, Mamoru