Red Hat Bugzilla – Bug 444317
xsltLibxmlVersion not present on ppc?
Last modified: 2013-07-02 23:18:17 EDT
Say, have you got any idea about the reason for this build failure?
It's dying on an AC_CHECK_LIB(xslt, xsltLibxmlVersion) configure check, which is odd
because the other three platforms got past that just fine before ppc choked.
I last built postgresql in rawhide on 25-March; all was well then, and the changes
in the postgresql SRPM since then are utterly trivial/unrelated, so it seems this has
to be due to some recent change in libxslt.
If necessary I'll crank up a ppc test system and poke into the details, but I thought
you might have a clue where to look.
Hum, no. Are you sure it's not just a problem on the build root.
Are you explicitely BuildRequire libxslt (-devel) ?
libxslt-1.1.23-2.fc10 seems to have built fine, ppc included
So I'm inclined to blame either a missing require from the spec (by why
would that work on other arches ?) or a PPC build root problem (which
happen from time to time ...)
Hum, I'm afraid it's related to a problem in libxslt-1.1.23-2 key patch
it kills the python bindings... Pushing a libxslt-1.1.23-3, hopefully it
will solve this problem
*** This bug has been marked as a duplicate of 444455 ***
Unfortunately the fix for 444455 didn't fix this one, so it's not a duplicate.
I've reproduced this on a personal ppc machine, and what I'm seeing in the config.log is
configure:8002: checking for xsltLibxmlVersion in -lxslt
configure:8037: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -Wall -Wmissing-
prototypes -Wpointer-arith -Winline -Wdeclaration-after-statement -Wendif-labels -fno-strict-aliasing -fwrapv -D_GNU_SOURCE -I/usr/include/libxml2 conftest.c -
lxslt -lxml2 -lpam -lssl -lcrypto -lgssapi_krb5 -lz -lreadline -lcrypt -ldl -lm >&5
/usr/bin/ld: /tmp/ccrnnP3S.o(.text+0xc): unresolvable R_PPC_REL24 relocation against symbol `xsltLibxmlVersion'
/tmp/ccrnnP3S.o: In function `main':
/home/tgl/rpmwork/BUILD/postgresql-8.3.1/conftest.c:41: relocation truncated to fit: R_PPC_REL24 against symbol `xsltLibxmlVersion' defined in .sdata section in
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status
configure:8043: $? = 1
configure: failed program was:
| #ifdef __cplusplus
| extern "C"
| char xsltLibxmlVersion ();
| main ()
| return xsltLibxmlVersion ();
| return 0;
configure:8061: result: no
configure:8071: error: library 'xslt' is required for XSLT support
[tgl@g3 libxslt-1.1.23]$ grep -r xsltLibxmlVersion .
./libxslt/xslt.c:const int xsltLibxmlVersion = LIBXML_VERSION;
xsltLibxmlVersion is a variable, not a function. So the question is not so much why it failed as why it ever
worked. Obviously this is a bug in the Postgres configure script, not in libxslt --- I suppose some recent
change in gcc is what exposed it.
yes the test is wrong.
In general for portable detection of libxslt use the xslt-config script,
If you want to do a linking based test either declare the item
properly or link against
exported from libxslt/xslt.h