Compiling Apache with mod_ssl on Mac OS 10.5
am 10.12.2007 00:04:23 von Jacob WeberHello. I'm having trouble compiling Apache with mod_ssl, on an MacBook
Pro running Mac OS 10.5.1. I'm trying to build the following programs
(rather than using the ones that come with the OS):
openssl-0.9.8g
mm-1.4.1
mod_ssl-2.8.30-1.3.39
apache_1.3.39
Everything works until I try to make Apache. I get the message "ld:
warning in ./libhttpd.so, file is not of required architecture", and
then it exits due to some undefined symbols. If I look at "file src/
libhttpd.so", it gives me "Mach-O bundle i386", which looks correct.
Anyone know why this would happen? More details are below.
If I don't pass --enable-module=ssl --enable-rule=SHARED_CORE when
configuring Apache, I don't get this error, so I assume it's somewhat
related to mod_ssl.
Jacob
The end of the "make" output looks like this:
<=== src/modules
gcc -c -I./../../mm-1.4.1 -I./os/unix -I./include -DDARWIN -
DMOD_SSL=208130 -DUSE_HSREGEX -DEAPI -DEAPI_MM -DSHARED_CORE `./
apaci` modules.c
gcc -c -I./../../mm-1.4.1 -I./os/unix -I./include -DDARWIN -
DMOD_SSL=208130 -DUSE_HSREGEX -DEAPI -DEAPI_MM -DSHARED_CORE `./
apaci` buildmark.c
cc -bundle -undefined suppress -flat_namespace -o libhttpd.so
buildmark.o modules.o modules/ssl/libssl.a modules/standard/
libstandard.a main/libmain.a ./os/unix/libos.a ap/libap.a regex/
libregex.a
gcc -I./../../mm-1.4.1 -I./os/unix -I./include -DDARWIN -
DMOD_SSL=208130 -DUSE_HSREGEX -DEAPI -DEAPI_MM -DSHARED_CORE `./
apaci` -L$BUILD_DIR/openssl-0.9.8g -L./../../mm-1.4.1/.libs \
-o libhttpd.ep -DSHARED_CORE_TIESTATIC main/http_main.c \
-L. -lhttpd -ldbm -lssl -lcrypto -lmm -lexpat
ld: warning in ./libhttpd.so, file is not of required architecture
Undefined symbols:
"_ap_validate_password", referenced from:
_suck_in_ap_validate_password in ccRuUDHX.o
"_ap_main", referenced from:
_main in ccRuUDHX.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[2]: *** [libhttpd.ep] Error 1
make[1]: *** [build-std] Error 2
make: *** [build] Error 2
I'm running the following commands (with $TAR_DIR, $BUILD_DIR, and
$INSTALL_DIR defined):
cd $BUILD_DIR
tar xzvf $TAR_DIR/openssl-0.9.8g.tar.gz
cd $BUILD_DIR/openssl-0.9.8g
../config --prefix=$INSTALL_DIR --openssldir=$INSTALL_DIR/openssl
make
cd $BUILD_DIR
tar xzvf $TAR_DIR/mm-1.4.1.tar.gz
cd $BUILD_DIR/mm-1.4.1
../configure --disable-shared
make
cd $BUILD_DIR
tar xzvf $TAR_DIR/apache_1.3.39.tar.gz
tar xzvf $TAR_DIR/mod_ssl-2.8.30-1.3.39.tar.gz
cd $BUILD_DIR/mod_ssl-2.8.30-1.3.39
../configure --with-apache=../apache_1.3.39 --with-ssl=../
openssl-0.9.8g --prefix=$INSTALL_DIR
cd $BUILD_DIR/apache_1.3.39
export SSL_BASE=../openssl-0.9.8g
export EAPI_MM=../mm-1.4.1
../configure --enable-module=ssl --enable-module=headers --enable-
module=expires --enable-module=so --enable-module=rewrite --enable-
rule=SHARED_CORE --prefix=$INSTALL_DIR
make # the error happens here
____________________________________________________________ __________
Apache Interface to OpenSSL (mod_ssl) www.modssl.org
User Support Mailing List modssl-users@modssl.org
Automated List Manager majordomo@modssl.org