Problem libxml2

Hi,
Code:
uname -a
FreeBSD some_host 9.1-RELEASE-p2 FreeBSD 9.1-RELEASE-p2 #0: Wed Apr  3 21:31:49 CEST 2013     root@some_host:/usr/obj/usr/src/sys/GENERIC  i386


I'm having a problem upgrading:
Code:
libxml2-2.7.8_5                     <   needs updating (index has 2.8.0_1)
# portupgrade libxml2-2.7.8_5 produces the following error:
Code:
  CCLD   xpath2
../../.libs/libxml2.so: undefined reference to `lzma_auto_decoder'
../../.libs/libxml2.so: undefined reference to `lzma_code'
../../.libs/libxml2.so: undefined reference to `lzma_end'
../../.libs/libxml2.so: undefined reference to `lzma_properties_decode'
gmake[3]: *** [xpath2] Error 1
gmake[3]: *** Waiting for unfinished jobs....
gmake[3]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc/examples'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0'
gmake: *** [all] Error 2
*** [do-build] Error code 1

Stop in /usr/ports/textproc/libxml2.
*** [build] Error code 1

Stop in /usr/ports/textproc/libxml2.
** Command failed [exit code 1]: /usr/bin/script -qa /tmp/portupgrade20130410-68260-1ctar0k-0 env UPGRADE_TOOL=portupgrade UPGRADE_PORT=libxml2-2.7.8_5 UPGRADE_PORT_VER=2.7.8_5 make
** Fix the problem and try again.
** Listing the failed packages (-:ignored / *:skipped / !:failed)
        ! textproc/libxml2 (libxml2-2.7.8_5)    (linker error)

I have tried to recompile lzma:
Code:
pkg_info | grep lzma
lzma-9.22           High-ratio LZMA compressor
lzmalib-0.0.1       Thin wrapper library of LZMA
But, same errors, please help.

Thanks.
D.
 
libxml2 not compiling

Yeah, same here. Doesn't compile any more. Ports tree from today with portsnap.

Code:
[root@roxanne /usr/ports/archivers/lzma]# pkg info | grep lzma
lzma-9.22                      High-ratio LZMA compressor
lzmalib-0.0.1                  Thin wrapper library of LZMA
[root@roxanne /usr/ports/archivers/lzma]# uname -a
FreeBSD roxanne.lan.palfreman.com 9.1-STABLE FreeBSD 9.1-STABLE #0 r249049: Wed Apr  3 20:19:04 UTC 2013     [email]root@roxanne.lan.palfreman.com[/email]:/usr/obj/usr/src/sys/ROXANNA  amd64

Code:
[root@roxanne /usr/ports/archivers/lzma]# pkg info | grep lzma
lzma-9.22                      High-ratio LZMA compressor
lzmalib-0.0.1                  Thin wrapper library of LZMA
[root@roxanne /usr/ports/archivers/lzma]# uname -a
FreeBSD roxanne.lan.palfreman.com 9.1-STABLE FreeBSD 9.1-STABLE #0 r249049: Wed Apr  3 20:19:04 UTC 2013     root@roxanne.lan.palfreman.com:/usr/obj/usr/src/sys/ROXANNA  amd64

Code:
[root@roxanne /usr/ports/textproc/libxml2]# make
===>  Building for libxml2-2.8.0_1
gmake  all-recursive
gmake[1]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0'
Making all in include
gmake[2]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include'
Making all in libxml
gmake[3]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include/libxml'
gmake[3]: Nothing to be done for `all'.
gmake[3]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include/libxml'
gmake[3]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include'
gmake[3]: Nothing to be done for `all-am'.
gmake[3]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include'
gmake[2]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/include'
Making all in .
gmake[2]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0'
gmake[2]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0'
Making all in doc
gmake[2]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc'
Making all in devhelp
gmake[3]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc/devhelp'
gmake[3]: Nothing to be done for `all'.
gmake[3]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc/devhelp'
Making all in examples
gmake[3]: Entering directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc/examples'
  CCLD   xpath2
  CCLD   reader1
  CCLD   reader4
  CCLD   parse2
../../.libs/libxml2.so: undefined reference to `lzma_auto_decoder'
../../.libs/libxml2.so: ../../.libs/libxml2.so: undefined reference to `lzma_auto_decoder'
undefine../../.libs/libxml2.so: undefined reference to `lzma_code'
d reference to `lzma_code'
../../.libs/libxml2.so: undefined referenc../../.libs/libxml2.so: undefined reference to `lzma_end'
../../.libs/libxml2.so: undefined../../.libs/libxml2.so r:e fue to `lzma_end'
ndefined reference ../../.libs/libxml2.so: undefined reference to `lzma_properties_decode'
to `lzma_auto_decoder'
erence to ../../.libs/libxml2.so: undefined reference to `lzma_code'
`lzma_properties_decode'
../../.libs/libxml2.so: undefined reference to `lzma_end'
../../.libs/libxml2.so: und../../.libs/libxml2.so: undefined reference to `lzma_auto_decoder'
efined r../../.libs/libxml2.so: undefined reference to `lzma_code'
eference to `lzma_properties_decode'
gmake[3]: *** [parse2] Error 1
gmake[3]: *** Waiting for unfinished jobs....
gmake[3]: *** [xpath2] Error 1
../../.libs/libxml2.so: undefined reference to `lzma_end'
../../.libs/libxml2.so: undefined reference to `lzma_properties_decode'
gmake[3]: *** [reader1] Error 1
gmake[3]: *** [reader4] Error 1
gmake[3]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc/examples'
gmake[2]: *** [all-recursive] Error 1
gmake[2]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0/doc'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/usr/ports/textproc/libxml2/work/libxml2-2.8.0'
gmake: *** [all] Error 2
*** [do-build] Error code 1

Stop in /usr/ports/textproc/libxml2.
*** [build] Error code 1

Stop in /usr/ports/textproc/libxml2.

I'm going to email gnome@FreeBSD.org, which is listed in the Makefile as the maintainer
 
SirDice said:
Have you tried removing lzma and lzmalib? It may conflict with the LZMA compression that's build into the base OS (by way of xz(1)).

After removal of lzma-9.22 and lzmalib-0.0.1:

Code:
--->  Upgrading 'libxml2-2.7.8_5' to 'libxml2-2.8.0_1' (textproc/

Works.
 
Yep, spot on. Works fine with lzma and lzmalib removed. As I understood it lzma is part of the base system anyway In my case tokyocabinet didn't call lzmalib port as a dependency but did require it in order to compile. There is something not right here. I don't get the distinction between liblzma in the base dist and lzmalib in the ports and their mutual antagonism.
 
You can fix by just adding --with-lzma=/usr to CONFIGURE_ARGS in textproc/libxml2/Makefile.
Code:
--- Makefile	(revision 315774)
+++ Makefile	(working copy)
@@ -27,9 +27,8 @@
 CONFIGURE_ARGS?=--with-iconv=${LOCALBASE} \
 		--with-html-dir=${PREFIX}/share/doc \
 		--with-html-subdir=${PORTNAME} \
+		--with-lzma=/usr \
 		--without-python
-CPPFLAGS+=	-I${LOCALBASE}/include
-LDFLAGS+=	-L${LOCALBASE}/lib
 
 .if !defined(MASTERDIR)
 MAN1=		xml2-config.1 xmllint.1 xmlcatalog.1

http://docs.freebsd.org/cgi/getmsg.cgi?fetch=468486+0+current/freebsd-gnome.
 
Back
Top