On a fresh system when emerging xmlstarlet libxml2 and libxslt got emerged as dependency: dev-libs/libxml2-2.6.20-r2 dev-libs/libxslt-1.1.14-r2 Compiling of xmlstarlet failed with the following error: gcc -Wall -g -pedantic -lgcrypt -o xml xml.o xml_edit.o xml_ls.o xml_escape.o xml_pyx.o xml_depyx.o xml_select.o xml_trans.o xml_validate.o xml_format.o xml_elem.o xml_C14N.o trans.o binsert.o stack.o strdup.o /usr/lib/libxslt.a /usr/lib/libexslt.a -lz -lm -lpthread /usr/lib/libxml2.a -lz -lm -lpthread -ldl -L/usr/lib gcc: /usr/lib/libxslt.a: No such file or directory gcc: /usr/lib/libexslt.a: No such file or directory gcc: /usr/lib/libxml2.a: No such file or directory make[2]: *** [xml] Error 1 make[2]: Leaving directory `/var/tmp/portage/xmlstarlet-1.0.1/work/xmlstarlet-1.0.1/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/xmlstarlet-1.0.1/work/xmlstarlet-1.0.1' make: *** [all-recursive-am] Error 2 libxml2 and libxslt seem to have stopped installing their static lib which xmlstarlet needs for static linking of both. Reproducible: Always Steps to Reproduce: 1. Have up-to-date system with libxml2 and libxslt 2. (re)emerge xmlstarlet or 1. Install new gentoo system 2. emerge xmlstarlet (which pulls in libxml2 and libxslt as dependency) Actual Results: xmlstarlet compilation fails Expected Results: Succeeding compilation Either xmlstarlet should be changed to not link statically agains libxml2 and libxslt anymore, or libxml2 and libxslt should install the static libs again.
I know this doesn't really count as a fix, per s
I know this doesn't really count as a fix, per sé, but if you re-merge libxslt and libxml2 with USE="static" it works fine.
http://bugs.gentoo.org/show_bug.cgi?id=109455 seems to be a duplicate of this one.
Ya that (USE="static") worked for me too. Without static xmlstarlet-1.0.1 would compile with the same error message as above. This ebuild definitely needs to be fixed to check if libxml2 and libxslt were compiled with the _static_ use variable on. Or some other fix...
xmlstartlet doesn't look like it requires static libs. I modified configure and configure.ini to use shared libs, rebuilt the digest, emerged and ran this test successfully: xml sel --net -t -m "//item" -o "Title: " -v "title" -n -o "Author: " -v "author" -n http://arstechnica.com/index.ars/rss
this is purely an issue with includes. So, 3 months on and we still have a problem. Guys do we have any solution to this?
Hi Leonardo, are you able to put any input into the bug please?
xmlstarlet is not really my package, but I understand that this started to happen after the 'static' flag was introduced in libxml2 and libxslt (which turns out to be incorrect). Unfortunately libxslt still hasn't been fixed in this regard, but regardless of that, the clean solution would be to fix xmlstarlet to stop depending on the .a files. If Mike could attach the patch he mentions on comment #4 I'd be happy to test it and commit it. (removing myself from CC list since I'm in the text-markup alias as well)
(In reply to comment #7) > If Mike could attach the patch he mentions on comment #4 I'd be happy to > test it and commit it. I had the same problem, but fixed it slightly differently. Following is (the very short) diff to the ebuild: --- /usr/portage/app-text/xmlstarlet/xmlstarlet-1.0.1.ebuild 2005-06-02 18:35:24.000000000 +1200 +++ /usr/local/portage/app-text/xmlstarlet/xmlstarlet-1.0.1.ebuild 2006-03-11 00:33:24.000000000 +1300 @@ -22,7 +22,8 @@ src_compile() { append-ldflags -lgcrypt - econf || die + LIBXSLT_LIBS="-lxslt -lexslt -lz -lm -lpthread" LIBXML_LIBS="-lxml2 -lz -lm -lpthread -ldl" econf || die emake || die } This will cause the package xmlstarlet to dynamically link with libxml2 and lib(e)xslt. I personally think this is an upstream bug. I fail to understand why it must link statically.
I fixed xmlstarlet ebuilds wrt comment #8. Me thinks this is an upstream bug, too. Thanks for the bug report and patch.