Solved

Apache 2 error on AIX 5.3

Posted on 2009-06-30
18
582 Views
Last Modified: 2013-11-17
Here is the error output:
# /usr/local/apache2/bin/apachectl -k start
httpd: Syntax error on line 411 of /usr/local/apache2/conf/httpd.conf: Cannot lo
ad /usr/local/apache2/modules/libphp5.so into server: rtld: 0712-001 Symbol xmlT
extReaderSetup was referenced\n      from module /usr/local/apache2/modules/libp
hp5.so(), but a runtime definition\n      of the symbol was not found.

What does this output mean? I had apache and php installed and working properly.  I have not used it in a couple of months, but now I will.  Now all these errors keep arising! Any input?
0
Comment
Question by:AIX25
  • 7
  • 6
  • 5
18 Comments
 
LVL 68

Expert Comment

by:woolmilkporc
Comment Utility
All this looks quite like you ported the apache installation to a new machine, or reinstalled AIX.

The message above points to a problem with 'libxml2'

Where is libxml2.a ? Should be in /usr/lib !

Please check!


0
 
LVL 30

Expert Comment

by:Kerem ERSOY
Comment Utility
When you find check if the version is 2.6.28 or higher. Becuase older versons are known not to export this symbol.
 
0
 
LVL 68

Expert Comment

by:woolmilkporc
Comment Utility
Try to find it in /opt/freeware/lib

Create a link like the one in our last case if it's there.
0
 

Author Comment

by:AIX25
Comment Utility
AIX was at 5.3.7 at the time of the apache and php install.  Now I upgraded to 5.3.9, does that have anything to do with it?
Also, I have in /usr/lib but its linked  libxml2.a -> /usr/ccs/lib/libxml2.a.  Should I not have it linked, is that causing the issue?
Not sure what verison of apache was installed? Is there a command I can run?
0
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 300 total points
Comment Utility
Apache version check is done by httpd -v

But strange that libxml2 should be in /usr/ccs/lib!

Maybe the link is broken, i.e. /usr/ccs/lib/libxml2.a does not exist?

Anyway, check /opt/freeware/lib for libxml2, if it's there do

ln -sf /opt/freeware/lib/libxml2.a /usr/lib/libxml2a

Don't worry, we can revert that anytime, if needed.

Was libxml installed via rpm? Check with rpm -qa | grep libxml2

You should then also see the version.


0
 
LVL 68

Assisted Solution

by:woolmilkporc
woolmilkporc earned 300 total points
Comment Utility
... typo

ln -sf /opt/freeware/lib/libxml2.a /usr/lib/libxml2.a
0
 

Author Comment

by:AIX25
Comment Utility
libxml was not installed via rpm. It was installed using a .tar source.  Also, libxml was not under /opt/freeware/lib.  Should I uninstall the current libxml and reinstall it using an rpm source?  
I executed a find on libxml...output:
# find / -name libxml
/usr/include/libxml2/libxml
/usr/lib/include/libxml2/libxml

Did this info help?  Also I ran httpd -v and I get ksh: httpd:  not found.
0
 
LVL 68

Expert Comment

by:woolmilkporc
Comment Utility
.tar source means you compiled it? This makes it even stranger that it should be in /usr/ccs...
1. You should run find / -name libxml\*  to find all relevant files, notably libxml2.a
2. Uninstalling (how?) and installing an rpm is a good idea.
3. Use /path/to/httpd -v
 
0
 

Author Comment

by:AIX25
Comment Utility
1. Here is the oupt:
# find / -name libxml\*
/home/nuo3367/.cpan/sources/authors/id/K/KM/KMACLEOD/libxml-perl-0.08.tar.gz
/home/nuo3367/.cpan/build/libxml-perl-0.08
/home/nuo3367/.cpan/build/libxml-perl-0.08/libxml-perl.spec
/home/nuo3367/.cpan/build/libxml-perl-0.08/libxml-perl-0.08.spec
/home/nuo3367/.cpan/build/libxml-perl-0.08/blib/lib/auto/libxml-perl
/home/nuo3367/.cpan/build/libxml-perl-0.08/blib/arch/auto/libxml-perl
/opt/freeware/lib/pkgconfig/libxml-2.0.pc
/opt/freeware/share/aclocal/libxml.m4
/usr/include/libxml2
/usr/include/libxml2/libxml
/usr/lib/include/libxml2
/usr/lib/include/libxml2/libxml
/usr/lib/lib/pkgconfig/libxml-2.0.pc
/usr/lib/lib/libxml2.a
/usr/lib/lib/libxml2.la
/usr/lib/libxml2.a
/usr/lib/libxml2.la
/usr/lib/share/doc/libxml2-2.6.31
/usr/lib/share/aclocal/libxml.m4
/usr/lib/share/man/man3/libxml.3
/usr/lib/share/gtk-doc/html/libxml2
/usr/lib/share/gtk-doc/html/libxml2/libxml2.devhelp
/usr/ccs/lib/libxml2.a
/usr/share/man/man3/libxml.3
/usr/share/doc/libxml2-2.6.31
/usr/mozilla/base/components/libxmlextras.so
/usr/local/src/php5/php-5.2.8/ext/libxml
/usr/local/src/php5/php-5.2.8/ext/libxml/libxml.c
/usr/local/src/php5/php-5.2.8/ext/libxml/libxml.lo
/usr/local/src/php5/php-5.2.8/ext/libxml/.libs/libxml.o
/usr/local/src/php5/php-5.2.8/ext/xmlrpc/libxmlrpc
/usr/local/src/php5/php-5.2.9/ext/libxml
/usr/local/src/php5/php-5.2.9/ext/libxml/libxml.c
/usr/local/src/php5/php-5.2.9/ext/libxml/.libs/libxml.o
/usr/local/src/php5/php-5.2.9/ext/libxml/libxml.lo
/usr/local/src/php5/php-5.2.9/ext/xmlrpc/libxmlrpc

2. If i install a most recent version of libxml rpm source, will that be the current active one being used? Will it ignore the .tar version of libxml?

3. Server version: Apache/2.2.10 (Unix)

Hopefully these outputs will help
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 68

Expert Comment

by:woolmilkporc
Comment Utility
Please, we are talking about libxml2!
What are those /usr/lib/lib/libxml2... pieces? Links, too?
Please repeat the find using
find / -name libxml2\* -ls
The rpm will go to /opt/freeware, and it will try to create some links in /usr/lib and /usr/bin, which creation will fail, as the links are already there.
Namely - /usr/lib/libxml2.a, /usr/bin/xmlcatalog and /usr/bin/xmllint
You should rename these three before installing rpm, so that the links can be created properly.
 
0
 
LVL 30

Assisted Solution

by:Kerem ERSOY
Kerem ERSOY earned 200 total points
Comment Utility
Hi,

It seems that you're missig the correct libxml2. Ro remove the link to your libxml2a

then do this:

rpm -iv http://www.oss4aix.org/download/latest/aix53/libxml2-2.6.32-1.aix5.1.ppc.rpm

Cheers,
K.
0
 

Author Comment

by:AIX25
Comment Utility
woolmilkporc, sorry about the wrong output.  Here is the correct one:

# find / -name libxml2\* -ls
349184    1 drwxr-xr-x  3 root      system         256 Nov 13  2008 /usr/include
/libxml2
189669    1 drwxr-xr-x  3 root      system         256 Dec  5  2008 /usr/lib/inc
lude/libxml2
190049 5100 -rwxr-xr-x  1 root      system     5221381 Dec  5  2008 /usr/lib/lib
/libxml2.a
190050    1 -rwxr-xr-x  1 root      system         783 Dec  5  2008 /usr/lib/lib
/libxml2.la
  540    1 lrwxrwxrwx  1 bin       bin             22 Apr 16 17:33 /usr/lib/libx
ml2.a -> /usr/ccs/lib/libxml2.a
 3078    1 -rwxr-xr-x  1 root      system         779 Nov 13  2008 /usr/lib/libx
ml2.la
189758    1 drwxr-xr-x  4 root      system         256 Dec  5  2008 /usr/lib/sha
re/doc/libxml2-2.6.31
189779    1 drwxr-xr-x  2 root      system         256 Dec  5  2008 /usr/lib/sha
re/gtk-doc/html/libxml2
189780  328 -rw-r--r--  1 root      system      335119 Dec  5  2008 /usr/lib/sha
re/gtk-doc/html/libxml2/libxml2.devhelp
  502 20911 -r-xr-xr-x  1 bin       bin       21411932 Jan 10  2008 /usr/ccs/lib
/libxml2.a
349343    1 drwxr-xr-x  3 root      system         256 Nov 13  2008 /usr/share/d
oc/libxml2-2.6.31
#

What do you recommend to do? Remove libxml and reinstall rpm libxml.  Or is there a way around this problem to minimize my problem?
0
 
LVL 30

Expert Comment

by:Kerem ERSOY
Comment Utility
Yup I do. Otherwise you can not get yur apache run. Because it was compiled for these libraries not the ones you've installed.
0
 

Author Comment

by:AIX25
Comment Utility
Thank you KeremE.  One final question, what is the command to check processes for which port is being used by what?
0
 
LVL 30

Expert Comment

by:Kerem ERSOY
Comment Utility
netstat -an
0
 
LVL 30

Assisted Solution

by:Kerem ERSOY
Kerem ERSOY earned 200 total points
Comment Utility
But it won't you what PID is connected to what port. for this you need to install lsof. You can find lsof either from your Toolbox CD or here:

ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/lsof/lsof-4.61-3.aix5.2.ppc.rpm



0
 

Author Comment

by:AIX25
Comment Utility
If I install lsof...then when I execute netstat -an it will give me a pid with it?
0
 
LVL 68

Assisted Solution

by:woolmilkporc
woolmilkporc earned 300 total points
Comment Utility
Hi again,
no, it's 'lsof -i' instead of 'netstat -a'
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Every server (virtual or physical) needs a console: and the console can be provided through hardware directly connected, software for remote connections, local connections, through a KVM, etc. This document explains the different types of consol…
Since pre-biblical times, humans have sought ways to keep secrets, and share the secrets selectively.  This article explores the ways PHP can be used to hide and encrypt information.
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
The viewer will learn how to look for a specific file type in a local or remote server directory using PHP.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now