tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rainer Jung <rainer.j...@kippdata.de>
Subject Re: mod_jk in Cygwin
Date Tue, 05 Feb 2008 17:10:30 GMT
Hi Vitek,

so it's good, that it works for you. To get a more complete picture of 
the situation (especially for our documentation), would you mind telling us:

- what's the output of /usr/sbin/apxs -q LDFLAGS ?
- are there also shared libraries in /usr/lib, like libapr-1.so ?
- do libapr-1 and libhttpd2core really get linked in statically, or are 
the libtool "la" files used to link them in dynamically (if you get a 
mod_jk.so out of the process, what does ldd mod_jk.so give for 
dependencies).

I don't know Cygwin well enough, but I would be surprised if they 
compiled everything statically (but hey, sometimes there *is* a surprise 
...).

Regards,

Rainer


Vitek Cvachoucek wrote:
> Ok so I have solved it,
> 
> The cookbook to compile mod_jk on Cygwin
> 
>   * Download source distribution (no Cygwin binaries available)
>   * '''http://apache.mirror.superhosting.cz/tomcat/tomcat-connectors/jk/source/'''
>   * '''tomcat-connectors-1.2.26-src.tar.gz'''
> 
>    wget http://apache.mirror.superhosting.cz/tomcat/tomcat-connectors/jk/source/tomcat-connectors-1.2.26-src.tar.gz
>    gzip -d tomcat-connectors-1.2.26-src.tar.gz
>    tar -xf tomcat-connectors-1.2.26-src.tar
>    cd tomcat-connectors-1.2.26-src/native
>    ./configure --with-apxs=/usr/sbin/apxs2
> 
>   * Hack Makefile building Apache 2.0 module
>     * '''apache-2.0/Makefile'''
>     * target '''mod_jk.la'''
>     * Added statically linked libraries for '''apache2-devel, apr1,
> aprutil1'''
> 
> mod_jk.la: mod_jk.lo $(APACHE_OBJECTS)
> 	$(LIBTOOL) --mode=link ${COMPILE} -no-undefined `${APXS} -q LDFLAGS`
> -o $@ -module -rpath ${libexecdir} -avoid-version mod_jk.lo
> $(APACHE_OBJECTS) /usr/lib/libapr-1.la /usr/lib/libhttpd2core.la
> /usr/lib/libaprutil-1.la
> 
>   * Now the '''make''' succeedes in creating '''mod_jk.so'''
> 
> 
> On Feb 5, 2008 10:01 AM, Vitek Cvachoucek <vitekcvachoucek@gmail.com> wrote:
>> I have now found a way how to get more information relating failing linkage:
>>
>> I have modified apache2.0/Makefile passing -no-undefined flag to the linker
>> {{{
>> mod_jk.la: mod_jk.lo $(APACHE_OBJECTS)
>>         $(LIBTOOL) --mode=link ${COMPILE} -no-undefined `${APXS} -q LDFLAGS`
>> -o $@ -module -shared -rpath ${libexecdir} -avoid-version
>>  mod_jk.lo $(APACHE_OBJECTS)
>> }}}
>>
>> Now I see it complains about APR libraries:
>>
>> {{{
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:2147:
>> undefined reference to `_apr_table_get'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:2162:
>> undefined reference to `_apr_table_get'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:2165:
>> undefined reference to `_ap_setup_client_block'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:2269:
>> undefined reference to `_apr_table_setn'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:2272:
>> undefined reference to `_apr_time_now'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:637:
>> undefined reference to `_ap_get_remote_host'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:660:
>> undefined reference to `_ap_get_server_name'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:668:
>> undefined reference to `_ap_get_server_port'
>> /home/developer/tomcat-connectors-1.2.26-src/native/apache-2.0/mod_jk.c:671:
>> undefined reference to `_ap_get_server_description'
>> ....
>> }}}
>>
>>
>> However I do have apr1 and aprutil1 installed , perhaps it is again
>> something as weird as with WSGI compilation that required to hack
>> libtool as it was unable to recognize cygwin shared libraries ....
>>
>> Any ideas?
>>
>> Vitek
>>
>>
>> On Feb 5, 2008 7:51 AM, Vitek Cvachoucek <vitekcvachoucek@gmail.com> wrote:
>>> Thank you for your help,
>>>
>>> I am already using configure --with-apxs=/usr/sbin/apxs2
>>>
>>> The whole offending section is:
>>>
>>> /usr/share/apr-1-build/libtool --mode=link gcc -I/usr/include/apache2
>>> -g -O2 -DUSE_APACHE_MD5 -I ../common  -I c:\java\jdk1.5.0/include -I
>>> c:\java\jdk1.5.0/include/cygwin -DCYGWIN -O2  -DHAVE_APR
>>> -I/usr/include/apr-1 -I/usr/include/apr-1 -g -O2  -DCYGWIN
>>> `/usr/sbin/apxs2 -q LDFLAGS` -o mod_jk.la -module -rpath
>>> /usr/lib/apache2 -avoid-version mod_jk.lo ../common/jk_ajp12_worker.lo
>>> ../common/jk_connect.lo ../common/jk_msg_buff.lo ../common/jk_util.lo
>>> ../common/jk_ajp13.lo ../common/jk_pool.lo ../common/jk_worker.lo
>>> ../common/jk_ajp13_worker.lo ../common/jk_lb_worker.lo
>>> ../common/jk_sockbuf.lo ../common/jk_map.lo
>>> ../common/jk_uri_worker_map.lo ../common/jk_ajp14.lo
>>> ../common/jk_ajp14_worker.lo ../common/jk_md5.lo
>>>  ../common/jk_shm.lo ../common/jk_ajp_common.lo
>>> ../common/jk_context.lo ../common/jk_url.lo ../common/jk_status.lo
>>> libtool: link: warning: undefined symbols not allowed in
>>> i686-pc-cygwin shared libraries
>>>
>>> I managed to get rid of the libtool's --silent flag however no more
>>> information provided. Is there somebody able to pinpoint what is wrong
>>> with it, e.g. specific libraries it is missing (like
>>> c:\java\jdk1.5.0\include\cygwin which is of course wrong but perhaps
>>> harmless), guess the
>>> the build process can be confused by OS name (as Cygwin is no OS at the end).
>>>
>>> Again any help would be much appreciated.
>>>
>>> Regards
>>> Vitek
>>>
>>>
>>> On Feb 5, 2008 1:00 AM, Rainer Jung <rainer.jung@kippdata.de> wrote:
>>>> Unfortunately no Cygwin experience yet. If you compiled your httpd under
>>>> Cygwin, I expect you have a /my/path/to/httpd/bin/apxs file?
>>>>
>>>> What happens if you try
>>>>
>>>> configure --with-apxs=/my/path/to/httpd/bin/apxs
>>>>
>>>> and then make?
>>>>
>>>> Do you get the error you mentioned? Any indication, which symbols are
>>>> meant there ("undefined")?
>>>>
>>>> Regards,
>>>>
>>>> Rainer
>>>>
>>>>
>>>> Vitek Cvachoucek schrieb:
>>>>
>>>>> Hello gentleman,
>>>>>
>>>>> did anybody of you ever attempted to have Apache 2 on Cygwin equipped
>>>>> with mod_jk?
>>>>>
>>>>> The main documentation page counts Cygwin as a supported platform:
>>>>>
>>>>> http://tomcat.apache.org/connectors-doc/webserver_howto/apache.html
>>>>>
>>>>> However I have never found binary release for Cygwin. The Win32 builds
>>>>> do not work with Cygwin. Perhaps it would be possible to build from
>>>>> source on cygwin however all my attempts ended with:
>>>>>
>>>>> libtool: link: warning: undefined symbols not allowed in
>>>>> i686-pc-cygwin shared libraries
>>>>>
>>>>> We a complex existing Cygwin-based system (Apache, WSGI, Subversion,
>>>>> Trac, Ssh ...) so moving out of cygwin is not an option (while
>>>>> mod_proxy may be an option). Does anybody have any experience running
>>>>> mod_jk on Cygwin? Any help would be greatly appreciated.
>>>>>
>>>>> Vitek

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


Mime
View raw message