<!–adsense–>
After upgrading from Apache2.2.8 to Aache2-2.2.9-22.1, you may have the following error while starting Apache2 webserver. This can happen on openSUSE or SUSE Linux
Starting httpd2 (prefork) /usr/sbin/httpd2-prefork: symbol lookup error: /usr/sbin/httpd2-prefork: undefined symbol: apr_atomic_xchgptr
To resolve this problem, update the following packages:
libapr-util
libapr1
apache-utils
opensuse11:~ # yast2 –update libapr1 libapr-util apache-utils
This should resolve the problem.
Thank you very much for this nice article 😉
Someone’s formatter got a little carried away on the command line and turned the — into an em dash. Replace the — with two hyphens and it works.
Worked on OpenSuSE 11 as root:
yast2 –update apache2-utils apache2-prefork libapr-util1 libapr1
Thanks for this tip, I had the same problem upgrading to Apache2_2.2.11. I had to install libapr-util & libapr1 separately, but everything worked. Thanks…
thanks a lot
kudos for the fix!!
happy camper:-)
hello colls,
I have some trouble, when try to update libapr1.
I has got a message:
Problem: nothing provides libc.so.6(GLIBC_2.9) needed by libapr1-1.3.8-3.1.i586
Solution 1: do not ask to install a solvable providing libapr1 > 1.2.12-27.2
Help me pls 🙂
Thanks you!
Although it didn’t work quite as described for me…. but based on info provided I changed to:
zypper in libapr1 libapr-util1 apache2-utils
and this fixed the problem on my SLES 10 sp2 server.
Thanks,
Ben.
Hi!
I fix it removing manually the old libraries that I have on /usr/local/lib and apache2 remains using that ones:
Code:
root@posido:/home/rgarcia# cp -up /usr/local/lib/libapr* libapr/
root@posido:/home/rgarcia# rm -i /usr/local/lib/libapr*
rm: remove regular file `/usr/local/lib/libapr-1.a’? y
rm: remove regular file `/usr/local/lib/libapr-1.la’? y
rm: remove symbolic link `/usr/local/lib/libapr-1.so’? y
rm: remove symbolic link `/usr/local/lib/libapr-1.so.0′? y
rm: remove regular file `/usr/local/lib/libapr-1.so.0.2.12′? y
rm: remove regular file `/usr/local/lib/libaprutil-1.a’? y
rm: remove regular file `/usr/local/lib/libaprutil-1.la’? y
rm: remove symbolic link `/usr/local/lib/libaprutil-1.so’? y
rm: remove symbolic link `/usr/local/lib/libaprutil-1.so.0′? y
rm: remove regular file `/usr/local/lib/libaprutil-1.so.0.2.12′? y
then reinstall the last version of libaprutil1 libaprutil1-dev libapr1 libapr1-dev and check that apache2 are using the correct apr libraries with
Code:
root@posido:/home/rgarcia# ldd /usr/sbin/apache2
linux-vdso.so.1 => (0x00007fffe4123000)
libpcre.so.3 => /lib/libpcre.so.3 (0x00007f3a303b2000)
libaprutil-1.so.0 => /usr/lib/libaprutil-1.so.0 (0x00007f3a3018f000)
libapr-1.so.0 => /usr/lib/libapr-1.so.0 (0x00007f3a2ff59000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007f3a2fd3c000)
libc.so.6 => /lib/libc.so.6 (0x00007f3a2f9b9000)
libuuid.so.1 => /lib/libuuid.so.1 (0x00007f3a2f7b3000)
librt.so.1 => /lib/librt.so.1 (0x00007f3a2f5ab000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x00007f3a2f372000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f3a2f16d000)
libexpat.so.1 => /lib/libexpat.so.1 (0x00007f3a2ef44000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3a3087d000)
and It works!
Code:
root@posido:/home/rgarcia# /etc/init.d/apache2 start
* Starting web server apache2 [ OK ]
I hope it helps.