(I posted some of this message [and a hopeful but incorrect solution]
yesterday to the mod_perl list.  Sorry for the cross-posting to all
the lists, but these two seem the most appropriate.)

I've been trying to compile libapreq 1.1 (Apache::Request) on Mac OS
10.2.4 for a couple of days, but I'm having no luck.  I've been
following the directions in the INSTALL.MacOSX file and following
along with David Wheeler's article "Installing libapreq on Jaguar: An
Update"
(http://www.macdevcenter.com/pub/a/mac/2003/02/07/libapreq_update.html),
but nothing seems to be working for me.

Specifically, when I run "make test" for libapreq, I get the following:

    [EMAIL PROTECTED]:/usr/local/src/libapreq-1.1]# make test
    t/httpd -f `pwd`/t/httpd.conf
    dyld: t/httpd Undefined symbols:
    _ap_null_cleanup
    _ap_pcalloc
    _ap_register_cleanup
    _ap_table_add
    _ap_table_get
    _ap_table_set
    _ap_table_unset
    _hvrv2table
    _mod_perl_tie_table
    _perl_request_rec
    _sv2request_rec
    _ap_day_snames
    _ap_month_snames
    _ap_null_cleanup
    make: *** [start_httpd] Trace/BPT trap

To get to this point, let me recount what I did.  I received a
brand-new Powerbook two days ago.  I prompty wiped the hard drive and
reinstalled OS X (so I wouldn't have OS 9), installed the Developer
Tools, installed Fink, and then used Fink to install lots of GNU
goodies.  I wiped out "/Library/Perl" and installed Perl 5.8.0 from
source.  I then built Apache 1.3.27/mod_perl 1.27 like so:

    perl Makefile.PL \
        APACHE_SRC=../apache_1.3.27/src/ \
        DO_HTTPD=1 \
        USE_APACI=1 \
        EVERYTHING=1 \
        APACI_ARGS='--enable-module=proxy, --enable-module=rewrite' \
        APACHE_PREFIX=/usr/local/apache

Then I tried building libapreq following the directions for OS X:

    cd libapreq-1.1
    sh BUILD.sh
    ./configure --with-apache-includes=/usr/local/apache/include
    make
    sudo make install

One problem with following the above directions lies in the contents
of BUILD.sh:

    [EMAIL PROTECTED]:/usr/local/src/libapreq-1.1]# cat BUILD.sh
    #!/bin/sh
    # BUILD.sh - preconfigure libapreq (for distribution)

    libtoolize --automake -c -f
    aclocal
    autoconf
    automake -a -c

The only "libtoolize" on my system is the one in "/sw/bin" put there
by Fink, which, I assume, goes along with the "glibtool" in the same
directory.  But the "libtool" that's in my $PATH is in "/usr/bin" put
there by Apple.  While I believe the Apple libtool is actually the GNU
project's libtool, these are definitely different binaries.  If I run
BUILD.sh after freshly unpacking the source for libapreq, I get the
following error:

    libtool: ltconfig version `' does not match ltmain.sh version `1.3.5'

Again, I think this is because of the differences between the libtool
binaries.  If I wipe out the source directory, unpack the original
tarball, skip running BUILD.sh, and go right to the "./configure ..."
step, I can get through the configuration and first "make" step.  But
then I get the above "undefined symbols" error stated above.

If I try to use the libtool* binaries in "/sw/bin" to do all the
building, then I get a different error:

    libtool: unrecognized option `-arch_only'

Because Apple's libtool accepts this option, but, alas, Fink's libtool does
not.

I've completely exhausted myself trying to get this to work.  I'm
primarily a mod_perl developer, and I really want to be able to do all
my development on this machine running OS X.  I'm willing to reinstall
the OS, Perl, not reinstall Fink, etc., but I can't really see being
able to stay with the Perl 5.6.0 from Apple.  I'd love some guidance
as I'm sick of Googling and poking and tweaking.  I'll take just about
any advice at this point!

ky

Reply via email to