Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 242864

Summary: gdm needs libxml2 built with USE=python
Product: Gentoo Linux Reporter: Tomas Carnecky <tom>
Component: New packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED WORKSFORME    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: emerge gdm build log

Description Tomas Carnecky 2008-10-20 09:16:53 UTC
I disabled the python use flag in my system, and now gdm fails to build (full log attached):

Traceback (most recent call last):
  File "/usr/bin/xml2po", line 35, in <module>
    import libxml2
ImportError: No module named libxml2
Traceback (most recent call last):
  File "/usr/bin/xml2po", line 35, in <module>
    import libxml2
ImportError: No module named libxml2
Traceback (most recent call last):
  File "/usr/bin/xml2po", line 35, in <module>
    import libxml2
ImportError: No module named libxml2
make[2]: *** [fr/gdm.xml] Error 1

Reproducible: Always
Comment 1 Tomas Carnecky 2008-10-20 09:18:19 UTC
Created attachment 169164 [details]
emerge gdm build log
Comment 2 Mike Auty (RETIRED) gentoo-dev 2008-10-20 09:51:01 UTC
Hi Tom,

xml2po (the program being run that can't import libxml2) is part of app-text/gnome-doc-utils, which specifically requires libxml2 to be able to run (it's in the RDEPEND).  So could you please post the output of "emerge -pv gnome-doc-utils" and "emerge -pv libxml2"?  Lastly could you please post the output of eselect python list... 

My guess is that you recently upgraded python, and for some reason python-updater never finished, and libxml2 didn't get rebuilt for the version of python you're running...
Comment 3 Tomas Carnecky 2008-10-20 10:56:20 UTC
libxml2 was installed at that time, so it wasn't a missing dependency. The problem was that libxml2 didn't build the python bindings (because I disabled the python USE flag), and when xml2po then tried to import the libxml2 python module, it failed. After I emerged libmxl2 with USE=python, I was able to install gdm.
I've seen code in other ebuilds which make the ebuild fail if some dependencies weren't merged with some special use flags. Maybe gnome-doc-utils should adapt to it.

Oh I see gnome-doc-utils already does that. The problem was that this implicit dependency wasn't caught by 'emerge --uD --newuse world': use flags for gnome-doc-utils hadn't changed and it thus wasn't rebuilt, so it couldn't catch that libxml2 was remerged without python.

You can close the bug now. The ebuilds and dependencies are fine.
Comment 4 Mike Auty (RETIRED) gentoo-dev 2008-10-20 13:31:47 UTC
Thanks, I'm going to close it as WORKSFORME.  5:)