A different buildworld failure

Peter Wemm peter at wemm.org
Wed Mar 24 07:51:54 PST 2004


On Wednesday 24 March 2004 12:43 am, Adriaan de Groot wrote:
> On Tue, 23 Mar 2004, Peter Wemm wrote:
> > No, you're missing the point.  Do not put "-fPIC -DPIC" *anywhere*
> > in /etc/make.conf.  Do not hack blindly hack ports to compile
> > everything with -fPIC (including executables), and yell at anybody
> > else who is doing it.
>
> Arr (in the manner of pirates everywhere).
>
> > Fix the problem, rather than just plaster over the top of it.  That
> > means finding out why the port is doing this in the first place? 
> > Is it just because the author is clueless and accidently forgot
> > that shared libraries need to be pic (and got away with it till now
> > on i386).  Or they are doing it deliberately with --prefer-non-pic
> > to libtool (and got away with it until now).  Or something just
> > went wrong.
>
> Well, here's the particular instance that caused me to take the road
> to ruin:
>
> /usr/bin/ld: /usr/local/lib/perl5/5.6.1/mach/CORE/libperl.a(perl.o):
> relocation R_X86_64_32S can not be used when making a shared object;
> recompile with -fPIC
>
> that's when I was trying to embed a perl interpreter in a C++ .so. Is
> that something I should just send-pr and be done with?

You should be linking against libperl.so or embedding libperl_pic.a.  
Except I've just looked and its missing.  Argh!  I wonder when that 
happened?  I'm sure it was working at one point...  Hmm. perl5.8 has a 
libperl.so and its now the default for 5.x ports.. is that something 
you can use?

-- 
Peter Wemm - peter at wemm.org; peter at FreeBSD.org; peter at yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5


More information about the freebsd-amd64 mailing list