I have a script that connects to a Sybase database, but  I'm getting a
relocation error:

DBUTIL:
LD_LIB=/usr/sybase/OCS-12_5/lib:/usr/sybase/OCS-12_5/lib3p:/usr/sybase/O
CS-12_0/lib:
Can't load
'/usr/local/lib/perl5/site_perl/5.6.1/sun4-solaris/auto/DBD/Sybase/Sy
base.so' for module DBD::Sybase: ld.so.1: /usr/local/bin/perl: fatal:
relocation
 error: file /usr/sybase/OCS-12_0/lib/libtcl.so: symbol comn_free:
referenced sy
mbol not found at /usr/local/lib/perl5/5.6.1/sun4-solaris/DynaLoader.pm
line 206
..
 at /fmac/dev/fin/ofheorbc/lib/DBUtil.pm line 19
Compilation failed in require at /fmac/dev/fin/ofheorbc/lib/DBUtil.pm line
19.
BEGIN failed--compilation aborted at /fmac/dev/fin/ofheorbc/lib/DBUtil.pm
line 1
9.
Compilation failed in require at
/fmac/dev/fin/ofheorbc/shl/sybase_uat/deleteOld
Sy.pl line 80.

I saw in an archive from this list that this was a bug in the Solaris
libintl.so vs Sybase libintl.so and to not have /usr/lib in the
LD_LIBRARY_PATH.  If I remove /usr/lib from my LD_LIBRARY_PATH before
running the script, it works fine, but if I try to set the LD_LIBRARY_PATH
in a BEGIN block (without /usr/lib -- see above), it still doesn't work.
Shouldn't  it be using the new LD_LIBRARY_PATH?

Thanks for any help!

Reply via email to