Leopold Toetsch (via RT) wrote:

# New Ticket Created by Leopold Toetsch # Please include the string: [perl #38429] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=38429 >


Platform x86/linux

Compiling a static Parrot simplifies debugging, e.g. for setting breakpoints. But it doesn't play nicely with dynamic extensions.

$ ./parrot -w t/dynpmc/foo_1.pir
Couldn't load 'foo.so': libparrot.so.0.4.1: cannot open shared object file

It works only with

$ LD_LIBRARY_PATH=blib/lib ./parrot ...

I'm pretty certain that after a fresh build things works perfectly, but my hunch is that the dynpmcs aren't forced to relink after a Configure.

I've just checked, and although they seem to be recopied into runtime/parrot/ dynext, the timestamps don't change in src/dynpmc.

I suspect that the proper solution is to enhance 'needs_build' in tools/build/dynpmc.pl to take into account whether Configure has been rerun. I can propose a solution to this tomorrow, unless there are any other takers...

Nick

Reply via email to