[Quickfix-users] Re: JNI library for Linux
Brought to you by:
orenmnero
|
From: Joerg T. <Joe...@ma...> - 2002-09-04 17:41:46
|
Joerg Thoennes wrote:
> 1. The libquickfix.a as a shared object library. The documentation says
> that for Linux only a statically linked version is available. Please,
> could anybody point out more details why this is the case? Perhaps
> this problem could be solved with a newer compiler, e.g. GCC 3.0?
I think I have accomplished this task. The program libtool which is used to
generate shared libs in a platform-independent way always got the option
"-static" which forced it to omit the shared library. This was triggered by
the following line in Makefile.am:
libquickfix_la_LDFLAGS = -static
In addition, there is a configure option "--enabled-shared". So I did the following:
1. Change all Makefile.am instance to comment out the above line.
2. Go to root directory and:
./bootstrap
./configure --enable-shared
make
Then "make install" installs /usr/local/lib as follows:
-rwxr-xr-x 1 root staff 2402221 Sep 4 17:04 libquickfix.so.0.0.0
lrwxrwxrwx 1 root staff 20 Sep 4 17:04 libquickfix.so.0 -> libquickfix.so.0.0.0
lrwxrwxrwx 1 root staff 20 Sep 4 17:04 libquickfix.so -> libquickfix.so.0.0.0
-rwxr-xr-x 1 root staff 762 Sep 4 17:04 libquickfix.la
-rw-r--r-- 1 root staff 11412896 Sep 4 17:04 libquickfix.a
And
ldd /usr/local/lib/libquickfix.so.0.0.0
libxml2.so.2 => /usr/lib/libxml2.so.2 (0x401d5000)
libc.so.6 => /lib/libc.so.6 (0x40274000)
libz.so.1 => /usr/lib/libz.so.1 (0x40392000)
libm.so.6 => /lib/libm.so.6 (0x403a1000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
Now I try to create libquickfix_jni.so using the Makefile.am from src/C++.
Oren, could you please send me your changes?
Thanks, Jörg
|