Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Apr 2013 11:27:44 -0600 (MDT)
From:      "John Hein" <gnome-jfbml@snkmail.com>
To:        "William Palfreman" <william@palfreman.com>, <gnome@freebsd.org>
Subject:   Re: libxml2 no longer compiles.
Message-ID:  <32001-1365614867-937938@sneakemail.com>
In-Reply-To: <CAE9Lj2=_GoiA_RY=DhkYba9ZUGi6FXjsyEt5fDcySGKELh3QZw@mail.gmail.com>
References:  <CAE9Lj2=_GoiA_RY=DhkYba9ZUGi6FXjsyEt5fDcySGKELh3QZw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
[resending - incorrect subject and threading in previous reply]

William Palfreman wrote at 13:17 +0200 on Apr 10, 2013:
 > Hi.  This malinglist is listed as the maintainer for the libxml2 port.
 >  Doesn't seem to compile any more.
[..]
 > .../../.libs/libxml2.so: undefined reference to `lzma_code'
[..]
 > Have attached all the relevant txt config files and a list of
 > installed apckages, whatever I can think of as this is -STABLE and a
[..]
 > lzmalib-0.0.1                  Thin wrapper library of LZMA
[..]

You should usually include config.log from the working directory when
reporting build problems.  You probably got this during
'make configure'...

checking for lzma_code in -llzma... no

.... which should perhaps be fatal for this port at configure time.
But it's not, so you die later during at link time.

The culprit is the lzmalib port you have installed.
It interacts badly in this case.

The quick fix is to remove that port if you don't need it.
Then libxml2 will build.

A better fix might be to try to coerce libxml2 to use the base lzma
include files & libs rather than the ones from lzmalib.  Here is a patch
to do that...

Index: Makefile
===================================================================
--- Makefile	(revision 315757)
+++ Makefile	(working copy)
@@ -28,8 +28,8 @@
 		--with-html-dir=${PREFIX}/share/doc \
 		--with-html-subdir=${PORTNAME} \
 		--without-python
-CPPFLAGS+=	-I${LOCALBASE}/include
-LDFLAGS+=	-L${LOCALBASE}/lib
+CPPFLAGS+=	-I/usr/include -I${LOCALBASE}/include
+LDFLAGS+=	-L/usr/lib -L${LOCALBASE}/lib
 
 .if !defined(MASTERDIR)
 MAN1=		xml2-config.1 xmllint.1 xmlcatalog.1


Another might be to fix lzmalib to be a better wrapper.

Another might be to stop using lzmalib in our ports tree, fixing any
references to it to just rely on the base lib instead and delete the
lzmalib port.

Here is a closely related issue recently discussed on the list:
http://lists.freebsd.org/pipermail/freebsd-gnome/2013-April/028552.html

If no committer responds to this thread, please open a PR with this
information.




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?32001-1365614867-937938>