Hi,
I found a problem with the build of apr-util-1.2.2 (
libapr-util1-1.2.2-13.2.src.rpm), when both expat-2.0.0-13.2.x86_64.rpm
and expat-32bit-2.0.0-13.2.x86_64.rpm are installed.
I am using SLES10 amd64 version, and building a amd64 version of
libapr-util1.2.2.
This is the error-message that appears when I issue command: "rpmbuild -ba
SPECS/libapr-util1.spec"
1. gcc -O2 -g -fmessage-length=0 -D_FORTIFY_SOURCE=2 -fPIC -Wall
-fno-strict-aliasing -DLDAP_DEPRECATED -Wall -g -fpie -fstack-protector
-pthread -pie -fno-pie -fno-PIE -o .libs/svn add-cmd.o blame-cmd.o
cat-cmd.o checkout-cmd.o cleanup-cmd.o commit-cmd.o copy-cmd.o
delete-cmd.o diff-cmd.o export-cmd.o help-cmd.o import-cmd.o info-cmd.o
lock-cmd.o log-cmd.o ls-cmd.o main.o merge-cmd.o mkdir-cmd.o move-cmd.o
notify.o prompt.o propdel-cmd.o propedit-cmd.o propget-cmd.o
proplist-cmd.o props.o propset-cmd.o resolved-cmd.o revert-cmd.o
status-cmd.o status.o switch-cmd.o unlock-cmd.o update-cmd.o util.o
../../../subversion/libsvn_client/.libs/libsvn_client-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_wc/.libs/libsvn_wc-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_ra/.libs/libsvn_ra-1.so
../../../subversion/libsvn_wc/.libs/libsvn_wc-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_diff/.libs/libsvn_diff-1.so
../../../subversion/libsvn_ra/.libs/libsvn_ra-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_ra_local/.libs/libsvn_ra_local-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_repos/.libs/libsvn_repos-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_fs/.libs/libsvn_fs-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_fs_fs/.libs/libsvn_fs_fs-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_fs_base/.libs/libsvn_fs_base-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_ra_svn/.libs/libsvn_ra_svn-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_delta/.libs/libsvn_delta-1.so
../../../subversion/libsvn_delta/.libs/libsvn_delta-1.so
/usr/src/packages/BUILD/subversion-1.3.x/subversion/libsvn_subr/.libs/libsvn_subr-1.so
../../../subversion/libsvn_subr/.libs/libsvn_subr-1.so
/usr/lib64/libaprutil-1.so /usr/lib/libexpat.so -lldap -llber -ldb-4.3
/usr/lib64/libexpat.so /usr/lib64/libapr-1.so -lrt -lcrypt -lpthread -ldl
-lz -Wl,--rpath -Wl,/usr/lib64
2. /usr/lib/libexpat.so: could not read symbols: File in wrong format
as the error-message shows, it's trying to include /usr/lib/libexpat.so,
and the reason for this can be found in
SOURCES/apr-util-1.2.2/build/apu-conf.m4, where a macro tests first for a
32bit version, and uses this if it exists.
What I did to make the sourcecode build, was to change the order in which
the macro tests/includes, so that the 64bit-version takes presence over
the 32bit version. I do not consider this a foolproof sollution, because
this might break when building a 32bit version. What probably should be
done is to use @libdir@/$libdir, or somehow check arcitechture for build
before including a version of this lib (my autoconf knowlege is minimal).
Here is patch I used to get the package built:
--- apu-conf.m4.orig 2007-05-10 09:05:58.927993750 +0200
+++ apu-conf.m4 2007-05-10 09:06:28.277828000 +0200
@@ -64,13 +64,6 @@
expat_libs="-lexpat"
expat_libtool="$1/lib/libexpat.la"
elif test -r "$1/include/expat.h" -a \
- -r "$1/lib/libexpat.la"; then
- dnl Expat 1.95.* installation (with libtool)
- expat_include_dir="$1/include"
- expat_ldflags="-L$1/lib"
- expat_libs="-lexpat"
- expat_libtool="$1/lib/libexpat.la"
- elif test -r "$1/include/expat.h" -a \
-r "$1/lib64/libexpat.la"; then
dnl Expat 1.95.* installation on certain 64-bit platforms (with
libtool)
expat_include_dir="$1/include"
@@ -78,6 +71,13 @@
expat_libs="-lexpat"
expat_libtool="$1/lib64/libexpat.la"
elif test -r "$1/include/expat.h" -a \
+ -r "$1/lib/libexpat.la"; then
+ dnl Expat 1.95.* installation (with libtool)
+ expat_include_dir="$1/include"
+ expat_ldflags="-L$1/lib"
+ expat_libs="-lexpat"
+ expat_libtool="$1/lib/libexpat.la"
+ elif test -r "$1/include/expat.h" -a \
-r "$1/lib/libexpat.a"; then
dnl Expat 1.95.* installation (without libtool)
dnl FreeBSD textproc/expat2
Med vennlig hilsen/Best Regards
NSN ASA
Daniel Bond
Østerdalsgata 1 K
0658 OSLO
Telefon: +47 21 00 01 00
Telefax: +47 21 00 01 01
-----------------------------------------------------------
Vi ber om at alle henvendelser går via [EMAIL PROTECTED]
Du sikrer da en rask behandling av din henvendelse.
Jeg må gjøre deg oppmerksom på at det kan ta tid å
behandle din sak om du velger å ikke bruke [EMAIL PROTECTED]
-----------------------------------------------------------------------------
This email may contain NSN confidential and privileged material for
the sole use of the intended recipient. Any review or distribution by
others is strictly prohibited. If you are not the intended recipient
please contact the sender and delete all copies.--- apu-conf.m4.orig 2007-05-10 09:05:58.927993750 +0200
+++ apu-conf.m4 2007-05-10 09:06:28.277828000 +0200
@@ -64,13 +64,6 @@
expat_libs="-lexpat"
expat_libtool="$1/lib/libexpat.la"
elif test -r "$1/include/expat.h" -a \
- -r "$1/lib/libexpat.la"; then
- dnl Expat 1.95.* installation (with libtool)
- expat_include_dir="$1/include"
- expat_ldflags="-L$1/lib"
- expat_libs="-lexpat"
- expat_libtool="$1/lib/libexpat.la"
- elif test -r "$1/include/expat.h" -a \
-r "$1/lib64/libexpat.la"; then
dnl Expat 1.95.* installation on certain 64-bit platforms (with libtool)
expat_include_dir="$1/include"
@@ -78,6 +71,13 @@
expat_libs="-lexpat"
expat_libtool="$1/lib64/libexpat.la"
elif test -r "$1/include/expat.h" -a \
+ -r "$1/lib/libexpat.la"; then
+ dnl Expat 1.95.* installation (with libtool)
+ expat_include_dir="$1/include"
+ expat_ldflags="-L$1/lib"
+ expat_libs="-lexpat"
+ expat_libtool="$1/lib/libexpat.la"
+ elif test -r "$1/include/expat.h" -a \
-r "$1/lib/libexpat.a"; then
dnl Expat 1.95.* installation (without libtool)
dnl FreeBSD textproc/expat2