Hi Tomcat dev, We have a scenario presently that is causing us some difficulties.
Env is SPARC Solaris10, gcc. We wish to use the current alpha build of Apache because it includes new features in mod_cache that we want to use, they are checked into trunk. http://svn.apache.org/viewvc/httpd/httpd/trunk/ We also wish to use mod_jk to connect to Tomcat. Our issue is that we cannot get any version of mod_jk to work with this Apache. We have tried the pre-compiled binaries of mod_jk, and tried to compile our own mod_jk. Both scenarios are failing. When we use the pre-compiled binary mod_jk.so provided by the Tomcat connectors. http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/solaris/jk-1.2.30/sparc/ mod_jk-1.2.30-httpd-2.2.X.so bash-3.00# ./apachectl configtest httpd: Syntax error on line 139 of /apps/apache-2.3.8/conf/httpd.conf: Cannot load /apps/apache-2.3.8/modules/mod_jk.so into server: ld.so.1: httpd: fatal: relocation error: file /apps/apache-2.3.8/modules/mod_jk.so: symbol ap_log_error: referenced symbol not found bash-3.00# and when we try to compile mod_jk to work with the Apache it fails with the following errors. This mod_jk compiles fine for Apache 2.2 /home/tomcat-connectors-1.2.30-src/native#./configure --with-apxs=/apps/apache-2.3.8/bin/apxs no errors.... /home/tomcat-connectors-1.2.30-src/native#make Making all in common /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp12_worker.c -o jk_ajp12_worker.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_connect.c -o jk_connect.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_msg_buff.c -o jk_msg_buff.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_util.c -o jk_util.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp13.c -o jk_ajp13.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_pool.c -o jk_pool.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_worker.c -o jk_worker.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp13_worker.c -o jk_ajp13_worker.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_lb_worker.c -o jk_lb_worker.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_sockbuf.c -o jk_sockbuf.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_map.c -o jk_map.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_uri_worker_map.c -o jk_uri_worker_map.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp14.c -o jk_ajp14.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp14_worker.c -o jk_ajp14_worker.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_md5.c -o jk_md5.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_shm.c -o jk_shm.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_ajp_common.c -o jk_ajp_common.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_context.c -o jk_context.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_url.c -o jk_url.lo /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -I /include -I /include/ -c jk_status.c -o jk_status.lo Making all in apache-2.0 /apps/apache-2.3.8/build/libtool --silent --mode=compile gcc -std=gnu99 -I/apps/apache-2.3.8/include -g -O2 -DUSE_APACHE_MD5 -I ../common -I /include -I /include/unix -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -g -O2 -DHAVE_APR -I/apps/apache-2.3.8/include -I/apps/apache-2.3.8/include -g -O2 -g -O2 -DSOLARIS2=10 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_LARGEFILE64_SOURCE -c mod_jk.c -o mod_jk.lo mod_jk.c: In function `jk_error_exit': mod_jk.c:645: warning: initialization from incompatible pointer type mod_jk.c:645: error: syntax error before ')' token mod_jk.c:647: warning: initialization from incompatible pointer type mod_jk.c:647: error: syntax error before ')' token mod_jk.c: In function `merge_jk_config': mod_jk.c:2835: warning: passing arg 5 of `jk_error_exit' from incompatible pointer type mod_jk.c:2835: warning: passing arg 6 of `jk_error_exit' from incompatible pointer type mod_jk.c: In function `jk_post_config': mod_jk.c:3279: warning: passing arg 5 of `jk_error_exit' from incompatible pointer type mod_jk.c:3279: warning: passing arg 6 of `jk_error_exit' from incompatible pointer type mod_jk.c:3681: confused by earlier errors, bailing out *** Error code 1 make: Fatal error: Command failed for target `mod_jk.lo' Current working directory /opt/customer/home/csuser/tomcat-connectors-1.2.30-src/native/apache-2.0 *** Error code 1 The following command caused the error: failcom='exit 1'; \ for f in x $MAKEFLAGS; do \ case $f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo all-recursive | sed s/-recursive//`; \ list='common apache-2.0'; for subdir in $list; do \ echo "Making $target in $subdir"; \ if test "$subdir" = "."; then \ dot_seen=yes; \ local_target="$target-am"; \ else \ local_target="$target"; \ fi; \ (cd $subdir && make $local_target) \ || eval $failcom; \ done; \ if test "$dot_seen" = "no"; then \ make "$target-am" || exit 1; \ fi; test -z "$fail" make: Fatal error: Command failed for target `all-recursive' Is anyone able to shed any light on this issue? Is it likely that we will be able to get mod_jk to work with the latest Apache code? Regards, Damon Green. -