error when trying to upgrade to apache 2.2.16

Scolpy

Verified User
Joined
Feb 25, 2009
Messages
142
Hello!
When I'm trying to upgrade to Apache v2.2.16 via custombuild, I get this error:
/usr/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
/usr/bin/ld: skipping incompatible /usr/lib/libm.a when searching for -lm
/usr/lib/libexpat.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[2]: *** [htpasswd] Error 1
make[2]: Leaving directory `/usr/local/directadmin/custombuild/httpd-2.2.16/supp
ort'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/directadmin/custombuild/httpd-2.2.16/supp
ort'
make: *** [all-recursive] Error 1

*** The make has failed, do you want to try to make again? (y,n):

I tried to do the make again(by pressing Y), but I got this error again.

Thanks!

Yonatan :)
 
Hello,

The "skipping incompatible" message happens on 64-bit systems. This is the related guide:
http://help.directadmin.com/item.php?id=213

Usually, before DA is installed on a 64-bit centos system, the cleanest way would be to run:
Code:
yum remove \*.i\?86
but only if we know this error will happen.

However, if DA is already installed, I wouldn't recommend removing libraries (it may be possible, but I wouldn't want to find out).

Likely, the simplest route is to run:
Code:
ln -sf /usr/lib64/libexpat.so /usr/lib/libexpat.so
ln -sf /usr/lib64/libm.so /usr/lib/libm.so
ln -sf /usr/lib64/libssl.so /usr/lib/libssl.so
ln -sf /usr/lib64/libgssapi_krb5.so.2.2 /usr/lib/libgssapi_krb5.so
ln -sf /usr/lib64/libkrb5.so.3.3 /usr/lib/libkrb5.so
ln -sf /usr/lib64/libk5crypto.so.3.1 /usr/lib/libk5crypto.so
ln -sf /lib64/libcom_err.so.2 /usr/lib/libcom_err.so
ln -sf /usr/lib64/libgcrypt.so.11 /usr/lib/libgcrypt.so
ln -sf /usr/lib64/libgpg-error.so.0 /usr/lib/libgpg-error.so
so that the 32-bit libraries that exist on the 64-bit box are redirected to the correct 64-bit libraries.

I'm still not sure why they would add the 32-bit libraries on a 64-bit system.. that just messes things up (perhaps if you're trying to run a 32-bit binary...).

John
 
Back
Top