Thank you Eckhard,
I expect mod_rivet to be able to load the libraries if they are
in /usr/lib. This is at least a general assumption on Debian/Linux
and, for what I know, on every other Unix-like os.
I can see 2 problems with Rivet set up:
1) make install fails to actually copy the 2 libraries
(librivetparser.so,librivet.so)
in either /usr/lib or /usr/share/rivet0.7.0 (see src/Makefile.am):
for instance, when 'make install' attempts to install librivetparser.so
/usr/bin/install -c .libs/librivetparser.so /usr/lib
/usr/share/rivet0.7.0/librivetparser.so
/usr/bin/install: target `/usr/share/rivet0.7.0/librivetparser.so' is
not a directory
the form of the command 'install' is actually wrong (install <options>
<source> <dest. dir>).
It seems that lib_libexecdir is used by configure in order to establish
the target
for 'install'. But this symbol is a 2 directory list (apache libs
directory + rivet libs directory)
2) if they're moved into /usr/lib manually apache fails with the same
reason. ldd output is
gershwin:~/Projects/rivet/1_0> ldd src/.libs/mod_rivet.so
linux-gate.so.1 => (0xffffe000)
libtcl8.4.so.0 => /usr/lib/libtcl8.4.so.0 (0xb7e93000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7e8f000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7d5e000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7d39000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7d27000)
libcrypt.so.1 => /lib/tls/i686/cmov/libcrypt.so.1 (0xb7cf9000)
libdb-4.4.so => /usr/lib/libdb-4.4.so (0xb7bfd000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb7bdd000)
/lib/ld-linux.so.2 (0x80000000)
I expect librivet and librivetparser to be listed there.
-- Massimo
Eckhard Lehmann wrote:
the question now is: where mod_rivet.so expects to find librivet.so and
librivetparser.so? /usr/lib didn't work and lib_libexecdir didn't
work either... the latter is evaluated as /usr/share/rivet0.7.0
The libraries must be on LD_LIBRARY_PATH - including the Tcl package
library (I think it's librivet.so). This should also be the library
where Rivet_Init is defined.
You can do a simple test with all the libraries that are generated in
the rivet distribution: for every library, do
nm <path/to/library>
and look where Rivet_Init is defined. This one must be on the dynamic
library load path (LD_LIBRARY_PATH or added through ldconfig).
Eckhard
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]