$VERSION = '6.17'

When I build perl with "make perl"  it seems that the library path is
not used in the binary.  That is LD_RUN_PATH is set when building the
module, but not when running "make perl".


In my Makefile.PL I'm doing this to get library and include file
locations:

      $config{LIBS} = `swish-config --cflags`;
      $config{INC}  = `swish-config --libs`;

Which works fine -- for example if the library is installed in a
non-standard location:

    $ $HOME/swtest/bin/swish-config --libs --cflags
    -L/home/moseley/swtest/lib -lswish-e -lz -lm
    -g -O2 -I/home/moseley/swtest/include

Then if I make the module (just run "make")  and look at the run-time
paths they are where I'd expect:

    $ ldd blib/arch/auto/SWISH/API/API.so | grep libswish
        libswish-e.so.2 => /home/moseley/swtest/lib/libswish-e.so.2 (0x40018000)

But, if I run make perl then the run-time path is different.

    $ make perl
    $ ldd ./perl | grep libswish
        libswish-e.so.2 => /usr/local/lib/libswish-e.so.2 (0x40027000)


The build line used for "make" is:

  LD_RUN_PATH="/home/moseley/swtest/lib" cc  -shared -L/usr/local/lib API.o  -o 
blib/arch/auto/SWISH/API/API.so   -L/home/moseley/swtest/lib -lswish-e -lz -lm

But when running "make perl" I see:

  cc -L/usr/local/lib -Wl,-E -o perl -O2 ./perlmain.o API.o 
blib/arch/auto/SWISH/API/API.a /usr/lib/libperl.a `cat 
blib/arch/auto/SWISH/API/extralibs.all` -ldl -lm -lpthread -lc -lcrypt

So it seems like LD_RUN_PATH is not being set on "make perl".



Another minor note -- not sure why this is being reported:

    $ perl Makefile.PL>/dev/null && make perl>/dev/null
    WARNING: DIR takes a array reference not a string/number.
             Please inform the author.

    $ fgrep DIR Makefile.PL | fgrep '=>'
        DIR             => [],

    l$ fgrep DIR Makefile.aperl | grep '=>'
    #     DIR => q[]


Maybe I don't need to specify an empty DIR (seems like I used to).
Regardless, that doesn't make the warning go away.  Maybe I've got
something else setup wrong.


Here's the Makefile.PL, if needed:
http://cvs.sourceforge.net/viewcvs.py/*checkout*/swishe/swish-e/perl/Makefile.PL?rev=1.15





-- 
Bill Moseley
[EMAIL PROTECTED]

Reply via email to