Quoting Dev Zero G Ltd <[EMAIL PROTECTED]>: > First of all - many many thanks to everybody who has helped so far - we > really appreciate it.. Just one last push required. :) > > We finally got mod_jk2.so and libjkjni.so to compile (see patch history > at the bottom of the mail), but can't install. We put them into > $(APACHE2_HOME)/modules and $(CATALINA_HOME)/lib accordingly. > > But after running $(APACHE2_HOME)/bin/apachectl configtest we get an > error message: > > --- error start --- > file://augada/usr/local/apache2/modules ../bin/apachectl configtest > Syntax error on line 231 of /usr/local/apache2/conf/httpd.conf: > Cannot load /usr/local/apache2/modules/mod_jk2.so into server: > /usr/local/apache2/modules/mod_jk2.so: Undefined symbol > "apr_thread_mutex_trylock" > --- error end --- > > What could it be?
Which version of Apache 2.0 did you have ? > --- patch history start --- > Filename: jk\native2\include\jk_mutex.h > > Line # :75 > Old line : > #ifdef HAS_APR > New line: > #if APR_HAS_THREADS +1 > #ifdef HAS_APR > Line # :121 > Old line : > #ifdef APR_HAS_THREADS > > New line: > #if APR_HAS_THREADS > > Reason: This conditional define statement adjusts variable > definition (threadMutex). Type of this variable depends on define > directive conditions, but to have needed types there are some #ifdef > statements on lines 75-81. So, those definition statements are not > the same, and this situation causes build-time error, when compiler > includes one header file (with one type defined inside), but variable > tries to have another type (found by me in another .h file - not > included while build time due to #ifdef directives). Such changes > were done experimentally and may be not 100% correct. In original > compiler fails with message like "syntax error on before > apr_thread_mutex_t in line 121" > apr.h have #define APR_AS_THREADS 1 so both should be the same. Didn't have any build error with that on Linux Redhat 7.2 + apache 2.0.39 ... > Filename jk\native2\build.xml > > Line # : 374 > Action : commented > > Reason : Having this link option uncommented (original) I could > not acquire libjkjni.so, only .a and .la files present. As far as I > am dummy in FreeBSD C/C++, I used something > "try-to-change-something-and-see-what-you-get" method (it has pretty > russian idiom,but I don't know its analog in English) > > Filename: jk\build.properties > > Some pathes set to correspond to reality (path to apache, etc) > > Filename: jk\native\apache-2.0\build-unix.sh > > Line # : 44 > Action: commented. > Line # : 46 > Action : uncommented and approved > New line: > INCLUDE="-I ../common -I$APACHE_HOME/include/apr-util $JAVA_INCLUDE" Don't use build-unix.sh but instead configure/make. The build.sh is no more present in recent jtc cvs, deprecated in favor of autoconf/make > Reason : while compiling mod_jk.so compiler could not see > connectors includes. I added first statement to make it visible > --- patch history end --- > > > > > -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>