I'm compiling a perl script that uses OpenSSL on Debian, but when it runs on
Redhat, it generates an error in Net::SSLeay (can't find shared library
libssl.so.0.9.7). On Redhat, its called 'libssl.so.0.9.7b' for some mad
reason.

I got it to run successfully by copying the libs from the Debian box &
setting the LD_LIBRARY_PATH. At a push, I could distribute the libs in the
same rpm/deb as my compiled program & set the LD_LIBRARY_PATH in a script
before I run my program. However, I'd *much* rather have all the libs packed
inside the compiled program, hence my experimentation with the --link
option.

I've managed to get pp to put the libs into the pp packed binary. I can
confirm that by extracting & seeing them in the 'shlib' directory, however
Net::SSLeay still doesn't find them. I assume this is because the 'shlib'
directory is not in any place where the dynamic linker will look.

Is there any way I can get the LD_LIBRARY_PATH set after my program is
extracted but before its executed? Is there a better way around this?

--
Ian Cass

Reply via email to