Hi,
For the benefit of any other Solaris 7 x86 user, I was successful in
compiling and using mod_webapp on this archictecture. In the hopes of
saving an other from wasting time scratching their heads, The following is
a brief listing of the experience.
started with a working stand alone version of tomcat 4.0.1
built Apache 1.3.22 from source with enable-module=rewrite and
enable-shared=rewrite
downloaded and built newer version of gcc (gcc 2.95.3)
downloaded the source jakarta-tomcat-connectors from the cvs
repository.
downloaded the apache APR source from http://apr.apache.org
cd to jakarta-tomcat-connectors/webapp
./support/buildconf.sh
./configure --with-apr=/someplace/apr \
--with-apxs=/apachedirectory/bin/apxs \
--with-tomcat=/someplace/tomcat
make
**First time I tried this, I set my --with-apxs= to point at the
apache directory, which
did not seem to build a correct make file. Subsequently, I set
--with-apxs= to point exactly to
apxs and it seemed to work.
copied webapp/apache-1.3/mod_webapp.so to /apache
directory/libexec
Modified /apache directory/conf/httpd to include the lines
LoadModule webapp_module libexec/mod_webapp.so
AddModule mod_webapp.c
and tried the command
/apache directory/bin/apachectl configtest.
****This resulted in the unhappy error message:
Syntax error on line 209: /apache dir/conf/httpd.conf:
Can not load /apache dir/libexec/mod_webapp.so into server
ld.so.1: ...
fatal relocation error ... mod_webapp.so: symbol --divdi3:
referenced symbol not found.
After a bunch of head scratching and googling-
Saw an email on this listing from David Cracauer about pulling
apart libgcc.a
found libgcc.a from the newly built gcc 2.95.3 and copied it to a
temp directory:
mkdir tmpjnk
cp libgcc.a tmpjnk
cd tmpjnk
ar x libgcc.a
gcc -fpic -shared -o libgcc.so *.o
this should create a shared library
export LD_PRELOAD=/some where/tmpjnk/libgcc.so
/apache directory/bin/apachectl configtest which resulted in
SYNTAX OK
**I set LD_PRELOAD just for testing this
Probably you will want to put the libgcc.so somewhere like
/usr/local/lib and be sure that
LD_LIBRARY_PATH points to it
Hope that this helps somebody.