Subject: | Build fails when using non-standard library locations |
I have a bunch of Solaris systems that have Perl as shipped by OpenCSW.
Thus, the libraries are installed under /opt/csw/lib... In these
systems, Compress::Bzip2 fails to resolve the correct libperl or libbz2,
and thus everything breaks:
$ ldd show_bzversion
libperl.so => (file not found)
libbz2.so.1.0 => (file not found)
libc.so.1 => /lib/libc.so.1
libm.so.2 => /lib/libm.so.2
/platform/SUNW,Sun-Fire-V490/lib/libc_psr.so.1
I can solve it by adding "LD_RUN_PATH=/opt/csw/lib" to the make
invocation, but that doesn't work for the Makefile.PL, so it always
builds its own bz2 stuff, and doesn't fix the tests. For the tests, I'd
need to run
make test LD_RUN_PATH=/opt/csw/lib
And it doesn't work for a CPAN installation, which is a pain. I attach
the output of perl -V:.* for better details. And LD_LIBRARY_PATH is not
an option.
It should rely on the -R /opt/csw/lib that is already present in
$Config{ccdldflags}, or in $Config{libpth} or $Config{libspath), but it
doesn't and I don't find a good place to instruct Makefile.PL to use it.
I already have plenty of modules with shared objects that work and pass
their tests perfectly.
Thanks.
Subject: | perl-info |
Message body not shown because it is not plain text.