This is what I did to make it work: First, I cleaned out all existing source code tarballs and all existing installations of apache in my target area (/usr/local/apache). On my system, that looked like:
--- /bin/rm -rf /usr/local/apache cd /usr/local/src /bin/rm -rf apache_1.3.23 mod_perl-1.26 httpd-apreq /bin/rm -rf apache.tar.gz mod_perl-1.26.tar.gz apreq.tar.gz --- Next, I downloaded all the source code. Note that I'm using Joe Schaefer's "special" versions of apache and libapreq. --- wget -q ftp://ftp-mirror.internap.com/pub/CPAN/authors/id/D/DO/DOUGM/mod_perl-1.26.t ar.gz wget -q http://www.apache.org/~joes/apreq.tar.gz wget -q http://www.apache.org/~joes/apache.tar.gz tar -xzf mod_perl-1.26.tar.gz tar -xzf apreq.tar.gz tar -xzf apache.tar.gz --- Then I built and installed mod_perl: --- cd mod_perl-1.26 perl Makefile.PL APACHE_SRC=../apache_1.3.23/src APACHE_PREFIX=/usr/local/apache PREP_HTTPD=1 USE_APACI=1 EVERYTHING=1 # I answered "y" to this, although I'm not sure why it even asked... # Configure mod_perl with ../apache_1.3.23/src ? [y] y make make install --- Then I built and installed the "special" apache: --- cd ../apache_1.3.23 ../configure \ --prefix=/usr/local/apache \ --with-layout=Apache \ --activate-module=src/modules/perl/libperl.a make make install --- Then I *manually copied* the httpd binary out of the source directory and into the install location. Yes, I know I just ran "make install", but the installed version is actually different than the one sitting in the source directory! --- # I have no idea why this is necessary, but it is /bin/cp src/httpd /usr/local/apache/bin --- Then I built and installed the special libapreq: --- cd ../httpd-apreq perl Makefile.PL make make install --- Finally, I configured apache to load both Apache::Request and Apache::Cookie and started it up: --- cd /usr/local/apache echo 'PerlRequire "conf/startup.pl"' >> conf/httpd.conf echo 'use Apache::Request;' > conf/startup.pl echo 'use Apache::Cookie;' >> conf/startup.pl echo '1;' >> conf/startup.pl bin/httpd -d /usr/local/apache -f conf/httpd.conf --- And it works! I even made a simple PerlHandler that gets and sets cookies and reads and sets parameters using Apache::Request and Apache::Cookie, and that worked too. Obviously, this build process is not ideal, but at least it's working! I hope future builds will be more "normal" :) Thanks to Joe and Rick and all the other people who provided help and tips. I compiled all of the commands above into a shell script and ran it as root on my system. The output produced by that script is attached to this message. I didn't attach the script itself because I don't want someone to run it and end up recursively deleting something they wanted to keep :) But the shell script is just the concatenation of all the little bits between "---"s above (plus "date" and "perl -V" at the very start). Oh, and finally, this is OS X 10.1.2, build 5P48: % uname -a Darwin localhost 5.2 Darwin Kernel Version 5.2: Fri Dec 7 21:39:35 PST 2001; root:xnu/xnu-201.14.obj~1/RELEASE_PPC Power Macintosh powerpc with the latest dev tools installed. -John
run.txt.gz
Description: Binary data