Subject: | Makefile prepends LD_RUN_PATH |
The Makefile generated by "perl Makefile.PL" prepends LD_RUN_PATH which causes a bad build and failed tests on my RedHat ES box with perl 5.8.3:
/usr/local/lib/libxml2.so.2.5.9
/usr/local/lib/libxslt.so.1.0.33
$ perl -MXML::LibXML -e 'print $XML::LibXML::VERSION'
1.56
$ uname -a
Linux www 2.4.9-e.37smp #1 SMP Mon Jan 26 11:29:50 EST 2004 i686 unknown
$ perl -v
This is perl, v5.8.3 built for i686-linux
$ make
cc -c -I/usr/local/include -I/usr/local/include/libxml2 -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -DVERSION=\"1.53\" -DXS_VERSION=\"1.53\" -fpic "-I/usr/local/lib/perl5/5.8.3/i686-linux/CORE" -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT LibXSLT.c
cc -c -I/usr/local/include -I/usr/local/include/libxml2 -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -DVERSION=\"1.53\" -DXS_VERSION=\"1.53\" -fpic "-I/usr/local/lib/perl5/5.8.3/i686-linux/CORE" -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT perl-libxml-mm.c
Running Mkbootstrap for XML::LibXSLT ()
chmod 644 LibXSLT.bs
rm -f blib/arch/auto/XML/LibXSLT/LibXSLT.so
LD_RUN_PATH="/usr/local/lib:/usr/lib:/lib" cc -shared -L/usr/local/lib LibXSLT.o perl-libxml-mm.o -o blib/arch/auto/XML/LibXSLT/LibXSLT.so -L/usr/local/lib -lxslt -lexslt -lxml2 -lz -lpthread -lm
chmod 755 blib/arch/auto/XML/LibXSLT/LibXSLT.so
cp LibXSLT.bs blib/arch/auto/XML/LibXSLT/LibXSLT.bs
chmod 644 blib/arch/auto/XML/LibXSLT/LibXSLT.bs
Manifying blib/man3/XML::LibXSLT.3
$ make test
PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01basic........ok
t/02dromeds......ok
t/03input........ok
t/04params.......ok
t/05quick........ok
t/06output.......ok
t/07blankdoc.....ok
t/08literal......ok
t/09exslt........ok
t/10functions....ok 4/14Use of uninitialized value in concatenation (.) or string at t/10functions.t line 9.
t/10functions....ok 6/14Use of uninitialized value in concatenation (.) or string at t/10functions.t line 9.
t/10functions....dubious
Test returned status 0 (wstat 11, 0xb)
DIED. FAILED tests 8-14
Failed 7/14 tests, 50.00% okay
Failed Test Stat Wstat Total Fail Failed List of Failed
-------------------------------------------------------------------------------
t/10functions.t 0 11 14 14 100.00% 8-14
Failed 1/10 test scripts, 90.00% okay. 7/94 subtests failed, 92.55% okay.
make: *** [test_dynamic] Error 2
If I comment out the LD_RUN_PATH in Makefile, everything works fine:
$ grep LD_RUN_PATH Makefile
LD_RUN_PATH =
# LD_RUN_PATH = /usr/local/lib:/usr/lib:/lib
$ make
cc -c -I/usr/local/include -I/usr/local/include/libxml2 -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -DVERSION=\"1.53\" -DXS_VERSION=\"1.53\" -fpic "-I/usr/local/lib/perl5/5.8.3/i686-linux/CORE" -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT LibXSLT.c
cc -c -I/usr/local/include -I/usr/local/include/libxml2 -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -DVERSION=\"1.53\" -DXS_VERSION=\"1.53\" -fpic "-I/usr/local/lib/perl5/5.8.3/i686-linux/CORE" -DHAVE_BLANK -DHAVE_BLANK -DHAVE_EXSLT perl-libxml-mm.c
Running Mkbootstrap for XML::LibXSLT ()
chmod 644 LibXSLT.bs
rm -f blib/arch/auto/XML/LibXSLT/LibXSLT.so
LD_RUN_PATH="" cc -shared -L/usr/local/lib LibXSLT.o perl-libxml-mm.o -o blib/arch/auto/XML/LibXSLT/LibXSLT.so -L/usr/local/lib -lxslt -lexslt -lxml2 -lz -lpthread -lm
chmod 755 blib/arch/auto/XML/LibXSLT/LibXSLT.so
cp LibXSLT.bs blib/arch/auto/XML/LibXSLT/LibXSLT.bs
chmod 644 blib/arch/auto/XML/LibXSLT/LibXSLT.bs
Manifying blib/man3/XML::LibXSLT.3
$ make test
PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/01basic........ok
t/02dromeds......ok
t/03input........ok
t/04params.......ok
t/05quick........ok
t/06output.......ok
t/07blankdoc.....ok
t/08literal......ok
t/09exslt........ok
t/10functions....ok 4/14Use of uninitialized value in concatenation (.) or string at t/10functions.t line 9.
t/10functions....ok 6/14Use of uninitialized value in concatenation (.) or string at t/10functions.t line 9.
t/10functions....ok
All tests successful.
Files=10, Tests=94, 1 wallclock secs ( 0.58 cusr + 0.06 csys = 0.64 CPU)