Bug 1400

Summary: gettext compilation failure due to libxml2
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Lianhao Lu <lianhao.lu>
Component: coreAssignee: Saul Wold <sgw>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: Medium CC: meta.mr.watcher, meta.watcher
Version: unspecified   
Target Milestone: 1.1   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Lianhao Lu 2011-08-25 02:43:31 UTC
If we execute the following command:

$ bitbake libxml2; bitbake gettext

The compilation of gettext would fail. The reason seems that gettext tries to link with the native polluted libxml shared libraries located in /usr/lib.

Anyhow, the command "bitbake libxml2 -c clean; bitbake gettext" would succeed.
Comment 1 Saul Wold 2011-09-02 13:44:28 UTC
Gettext does not have any dependency on libxml2 (target version) it does depend on libxml2-native version and will build it first in order to use it.  If you can include log files from the compilation that would be helpful.
Comment 2 Saul Wold 2011-09-02 15:08:18 UTC
You seem to have gotten that turned around, I tried to build gettext without libxml2 (using -c cleansstate) and got a failure, but when I built libxml2, it succedded.  gettext has a configure option --with-included-libxml which should force gettext to use the included one to ensure no dependency issues.
Comment 3 Saul Wold 2011-09-02 15:21:33 UTC
Further update, seems that there is also a libcroco which can cause issue if it is present or not.  If its present and libxml2 is not, then the compilation will fail.  There is also a --with-included-libcroco.

I think the correct fix here to ensure we do not cause dependency issues it to use both --with-included-libcroco and --with-include-libxml
Comment 4 Saul Wold 2011-09-07 17:42:39 UTC
http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=e5e6e761d15e42d94836a2153eda13bdbc4f915e

There still might be an issue that needs looking into for removing the internal libraries and using the external version with glib, but right now there might be a circular dependency between glib and gettext.