Solved

Apache 2 error on AIX 5.3

Posted on 2009-06-30
18
585 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
ID: 24748963
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
ID: 24749115
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
ID: 24749201
Try to find it in /opt/freeware/lib

Create a link like the one in our last case if it's there.
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 

Author Comment

by:AIX25
ID: 24749241
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
ID: 24749414
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
ID: 24749427
... typo

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

Author Comment

by:AIX25
ID: 24749490
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
ID: 24749608
.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
ID: 24749675
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
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 24749787
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
ID: 24749842
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
ID: 24750343
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
ID: 24750448
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
ID: 24750493
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
ID: 24750518
netstat -an
0
 
LVL 30

Assisted Solution

by:Kerem ERSOY
Kerem ERSOY earned 200 total points
ID: 24750624
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
ID: 24755065
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
ID: 24755101
Hi again,
no, it's 'lsof -i' instead of 'netstat -a'
0

Featured Post

Connect further...control easier

With the ATEN CE624, you can now enjoy a high-quality visual experience powered by HDBaseT technology and the convenience of a single Cat6 cable to transmit uncompressed video with zero latency and multi-streaming for dual-view applications where remote access is required.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
Introduction This article is intended for those who are new to PHP error handling (https://www.experts-exchange.com/articles/11769/And-by-the-way-I-am-New-to-PHP.html).  It addresses one of the most common problems that plague beginning PHP develop…
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.
The viewer will learn how to create a basic form using some HTML5 and PHP for later processing. Set up your basic HTML file. Open your form tag and set the method and action attributes.: (CODE) Set up your first few inputs one for the name and …

809 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