Problems with DLL's depending on other DLL's
Hello all!
Last time I have installed Postgres 6.1 on my Linux box. Because this
version is not available as debian package yet, I've decided to install it
in a dedicated subdirectory in /usr/local.
The libpq.so library is located in /usr/local/pgsql/lib, so I've added
the apropriate line to /etc/ld.so.conf and ran ldconfig.
Problems started when I compiled pgsql_perl5 extension.
When perl tried to load the Pg.so library, which depends on libpq.so -
I've received message "file not found".
I checked dependencies of Pg.so and got following results:
./Pg.so => ./Pg.so
libc.so.5 => /lib/libc.so.5.4.20
libpq.so => not found
ld.so was unable to find libpq, even though it's directory was included in
/etc/ld.so.conf!
I've investigated the problem more thoroughly. It appeared, that ld.so is
able to find libpq only in following cases:
1) If it is located in /usr/lib
2) If I add /usr/local/pgsql/lib to LD_LIBRARY_PATH
It is interesting, that this problem occures only in situation when one
DLL depends on another one. When I write C program using libpq,
modification of /etc/ld.so.conf is sufficient.
Does anybody could explain to me this effect? How to cure it?
Setting of LD_LIBRARY_PATH in /etc/profile is not the best solution,
because it will not affect programs started by init.d scripts (for example
I would like to enable apache WWW server to utilize the pgsql_perl5).
Thanks in advance
Wojtek Zabolotny
wzab@ipe.pw.edu.pl
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-user-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: