Hi,
Thought ( or hoped ) this might be useful to any folk building on the HPUX 11 platform
:
Attempting to do this build causes Apache configure to fail with undefined symbols at
sanity compile. This may be specific to the version of Oracle ( 8.1.6 ) that I used,
as it seems to have several apparently vital object files not installed into
libraries, just "lying around" there...
In addition the mod_perl configure process writes -Aa -D_HPUX_SOURCE into various
cflags . This causes the Apache make process to fail complaining about -Aa
-D_HPUX_SOURCE +e or -Ae being required ( something about long integers )
By being a bit brutal with the Apache src/Configure script and then running a ( small
) sed script on all Makefiles I managed
to get it to build just fine - but it took a while to work out what was going on... (
not being a "configure" or perl build expert )
Details are as follows :
All builds were done using HP's ANSI C compiler
Perl 5005_03 Build
--------------
I installed perl + DBI-1.13 + DBD-Oracle-1.06.
this required a STATIC build for DBD-Oracle
the version of Oracle is 8.1.6
the os is HPUX 11 ( 32-bit )
mod_perl 1.24 build
---------------------
1 perl Makefile.PL APACHE_SRC=<apache src> DO_HTTPD=1 USE_APACI=1 PREP_HTTPD=1
EVERYTHING=1
2 make
3 make install
Apache 1.3.12 build
-------------------
1 ./configure --prefix=<prefix> --activate-module=src/modules/perl/libperl.a
this fails with many undefined symbols , this was due to "perl
-MExtUtils::Embed -e ldotps" ( run by Configure ) removing
the following object files from the library string :
<oracle_home>/lib/nautab.o
<oracle_home>/lib/naeet.o
<oracle_home>/lib/naect.o
<oracle_home>/lib/naedhs.o
<oracle_home>/rdbms/lib/kpudfo.o
2 cp src/Makefile.config to src/Makefile.config.new
3 edit the .new adding in the libraries to LIBS1
that "perl -MExtUtils::Embed -e ldotps" ( in mod_perl.config.sh ) removes -
see 1
4 edit src/Configure getting it to cp Makefile.config.new over Makefile.config
just before the sanity compile
5 run configure again
6 run a sed script on each Makefile in the apache tree to change -Aa to -Ae (
sed 's/-Aa/-Ae/g' file1 > file2 )
7 run make
8 run make install
9 edit prefix/conf/httpd.conf to enable the mod perl bits
10 edit prefix/conf/httpd.conf to know about ORACLE_HOME ( SenEnv ORACLE_HOME
<oracle home> )
Cheers
Mark
P.s : I know people are going to say " Use GCC and it will be ok".... I did try this
on a ( different ) HPUX 11 box and still
Oracle-DBD would not run if built dynamically - it built ok but the loader refused to
load Oracle.sl, something about threaded library... ! no such issue arises on HPUX
10.20 and Oracle 8.0.5...)