speedy_backend: Undefined symbol "PL_memory_wrap"

Anton Berezin tobez at tobez.org
Tue May 30 06:04:31 PDT 2006


On Tue, May 30, 2006 at 04:34:02AM -0800, Noah wrote:
> On Tue, 30 May 2006 13:38:43 +0200, Anton Berezin wrote

> > Did you execute "use.perl port" ?

> yes - just after the build.  Look at perl -V for more information

> > What does ldd /usr/local/bin/speedy_backend say?
> 
> typhoon#  ldd /usr/local/bin/speedy_backend
> /usr/local/bin/speedy_backend:
>         libperl.so => /usr/lib/libperl.so (0x28072000)

    ^^^^^^^^^

Ok, here is the crux.  Your speedy_backend binary is linked against system
perl, as opposed to against perl from ports.

This can be caused by two different things.  One is that LD_LIBRARY_PATH is
set.

> How do I verify this?  What am I looking for?  This is a FreeBSD-4.11
> machine

Well, just "env|grep LD" should tell you whether this is the case.  If it
is, then it is a bit more tricky to find out what sets it.

But I don't think it is the case.  More likely is another scenario, namely
that you either build SpeedyCGI *before* you built lang/perl5.8, or before
you executed "use.perl port".

I would say, try to rebuild p5-CGI-SpeedyCGI anew now, and check with ldd
that it picks the right libperl.so
(/usr/local/lib/perl5/5.8.8/mach/CORE/libperl.so).

Yet another possibility is that p5-CGI-SpeedyCGI, for inexplicable reason,
is using -L/usr/lib during linking linking.  In this case the fix above
won't work, and p5-CGI-SpeedyCGI needs to be fixed, so I am CCing Lars just
in case.

If this is the case, a simple workaround would be to move /usr/lib/libperl.*
out of the way and rebuild p5-CGI-SpeedyCGI, unless you are willing to wait
until Lars fixes the problem.

Cheers,
\Anton.
-- 
An undefined problem has an infinite number of solutions.
-- Robert A. Humphrey


More information about the freebsd-ports mailing list