Moving an Apache2 Installation on AIX

From: Jeff Herrick (jherrick_at_igs.net)
Date: 08/18/04


Date: Wed, 18 Aug 2004 11:08:44 -0400


Folks

I've successfully built Apache 2.0.50 (with xlc_r) on AIX 5.2 but I have a
problem when I want to copy the 'built' version to a different directory
tree.

I have built with --prefix=/home/jeffh/apache2050 and I want to copy
this to /home/jeffh/apachedist (for example) ... the reason I need
to do this is our site has 3 different environments on the dev machine
and no compiler on the prod machine. In addition to this there is a
lot of code that assumes DocumentRoot is right below ServerRoot ..so
I can't just use one base install with multiple config files. I have
to copy the distribution to each environment.

When I copy it I change the LIBPATH variable in the bin/envvars script
as well as the bin/apachectl script. I also modify the apr-config
script in the bin dir...but when I start it up I get

exec(): 0509-036 Cannot load program /home/jeffh/apachedist/bin/httpd
because of the following errors:
        0509-022 Cannot load module
/home/jeffh/apachedist/lib/libaprutil-0.so.
        0509-150 Dependent module
/home/jeffh/apache2050/lib/libexpat.a(libexpat.so.0) could not be loaded.
        0509-022 Cannot load module
/home/jeffh/apache2050/lib/libexpat.a(libexpat.so.0).
        0509-026 System error: A file or directory in the path name does
not exist.

It seems to find the proper aprutil.so in /apachedist but it then
tries to go after the _old_ expat library which does not exist because
I blow the original stuff away to guarantee that my test is valid

A dump -HTv of the copied httpd executable shows

 ***Loader Section***
                      Loader Header Information
VERSION# #SYMtableENT #RELOCent LENidSTR
0x00000001 0x000002e4 0x0000090c 0x000000ab

#IMPfilID OFFidSTR LENstrTBL OFFstrTBL
0x00000008 0x0000b210 0x000037c1 0x0000b2bb

                        ***Import File Strings***
INDEX PATH BASE MEMBER
0 /home/jeffh/apache2050/lib:/usr/lib:/lib

1 libaprutil-0.so
2 libapr-0.so
3 libnsl.a shr.o
4 libpthread.a shr_comm.o
5 libpthread.a shr_xpg5.o
6 libc.a shr.o
7 librtl.a shr.o
[SNIP]

The original path (with the 2050) seems to be coded in the executable....

Is there any one of the multitude of options in the autoconf
script that will neuter this behaviour? Do I need to hack
the makefiles with some special linker incantation or an
LDFLAG option?

Explicitly setting LIBPATH before running doesn't help.

BTW the configure script was run using the options on Jeff Trawick's
excellent Apache2 AIX page at

http://www.apache.org/~trawick/apache-2-on-aix.html

with the exception of an --without-berkeley-db (we don't use auth)

Thanks for any advice in advance

Jeff Herrick



Relevant Pages

  • RE: BizTalk 2006 64 bit Deploy
    ... Doug Girard [MSFT] ... This posting is provided "AS IS" with no warranties, ... My dev machine is 32 bit, my deploy script works grand on another 32 ...
    (microsoft.public.biztalk.general)
  • RE: BizTalk 2006 64 bit Deploy
    ... Could you provide more details on exactly what the script is doing. ... Is this problem only with send and receive ports or also for other ... could you share with us the actual artifacts that you were ... My dev machine is 32 bit, my deploy script works grand on another 32 ...
    (microsoft.public.biztalk.server)
  • BizTalk 2006 64 bit Deploy
    ... My dev machine is 32 bit, my deploy script works grand on another 32 ... bit dev box - but wont work on the 64 bit machine - fails to create any ...
    (microsoft.public.biztalk.general)
  • BizTalk 2006 64 bit Deploy
    ... My dev machine is 32 bit, my deploy script works grand on another 32 ... bit dev box - but wont work on the 64 bit machine - fails to create any ...
    (microsoft.public.biztalk.server)