dont send me tomcat hereafter!!
----- Original Message ----- From: "Rainer Jung" <[EMAIL PROTECTED]>
To: "Tomcat Users List" <users@tomcat.apache.org>
Sent: Thursday, March 06, 2008 5:56 AM
Subject: Re: mod_jk gmake recursion error on solaris 10 x86


Hi Chris,

ChrisS schrieb:
I installed Sun Studio 11 and included it first in the $PATH env variable. This cleaned up the nasty warnings about CC. Then I built it with: gmake and then gmake clean this was also successful. Libtool was then used to pass the mod_jk.so file to its location in this case: /www/apache/libexec

I do however have one problem and it is a biggy. LoadModule along with LoadFile(testing) will not load the module into my 1.3.39 dist. The error message thrown is this:

../bin/apachectl start
Syntax error on line 237 of /www/apache/conf/httpd.conf:
Cannot load /www/connectors/jk/native/apache-1.3/mod_jk.so into server:ld.so.1: libhttpd.ep: fatal: relocation error: file /www/connectors/jk/native/apache-1.3/mod_jk.so: symbol ap_ctx_get: referenced symbol not found
../bin/apachectl start: httpd could not be started

The symbol ap_ctx_get, which is missing here is not included in a standard httpd 1.3. It comes with the extended API (EAPI) bundled with mod_ssl. mod_ssl for Apache httpd 1.3 mainly consists of the ssl module and a set of aditional patches for httpd 1.3, which extend the module API, s.t. the more complex ssl functionality fits into the httpd module API. In the following I'll not make a distinction between EAPI and mod_ssl.

Maybe the mod_jk.so you are trying to load here is the one on our project download page? Because that one explicitely states in the README, that it has been build against an EAPI enabled httpd. Or you build your mod_jk against an ssl enabled httpd and afterwards try to ue it inside one, which is a plain one.

Although mod_jk soesn't really have a dependency on ssl, there is one symbol, ap_default_port, that the patches for mod_ssl redefine (you can imagine, that the default port with ssl depends on the fact, if one uses ssl (443) or not (80)) and thus when mod_jk gets build against an ssl enabled httpd, the resulting mod_jk.so has a single additional dependency, namely ap_ctx_get().

Before trying to fix this reconsider your choice of httpd first. Version 1.3 is now very outdated. The httpd project already officially announced, that they put a very high bar on patches they are going to apply to 1.3. Mainly they'll only fix critical security issues.

If I would start with something new today, I would really choose httpd 2.2.x. This will provide you a much more future proof environment. It comed with builtin ssl support, ldap support, a much better reverse proxy, less 64 Bit problems (likely even no 64 Bit problems) and much more.

Please could you help me, I have tried compiling the Apache Dist with:

./configure --prefix=/www/apache
                 --enable-module=most
                 --enable-shared=max
                 --enable-rule=SHARED_CORE
$ make
$ make install

Don't know about enable-rule, but it doesn't look wrong.

Believing that this would resolve my symbol issue. Symbols are in the table this was shown with: nm /www/apache/bin/httpd but none for
ap_ctx_get

Yes, because it's a non mod_ssl httpd 1.3.
But: nm on mod_jk.so should also show, that mod_jk does *not* want that symbol.


Kindest Regards

ps Thanks for all the help so far guys!!

Regards,

Rainer


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to