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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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 <[EMAIL PROTECTED]> 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to