arm/154189: lang/perl5.12 doesn't build on arm

Naoyuki Tai ntai at smartfruit.com
Fri Sep 23 05:10:05 UTC 2011


The following reply was made to PR arm/154189; it has been noted by GNATS.

From: Naoyuki Tai <ntai at smartfruit.com>
To: bug-followup at FreeBSD.org, kvedulv at kvedulv.de
Cc:  
Subject: Re: arm/154189: lang/perl5.12 doesn't build on arm
Date: Fri, 23 Sep 2011 00:42:41 -0400

 --20cf30781540855aea04ad94704f
 Content-Type: text/plain; charset=UTF-8
 
 I have built miniperl that runs by removing  "-DPIC -fPIC" from the c flags
 everywhere.
 After "make build" fails at miniperl core dump, I removed the *.o, and
 removed "-DPIC -fPIC" from make files, cflags, etc.
 Then, I restarted the build in the work/perl-5-12.4 directory with gmake.
 This builds miniperl that runs.
 
 miniperl crashes regardless of debug or optimized build.
 So, this is not a compiler optimization problem.
 
 From those two, the reason of miniperl core dump may be because the objects
 compiled with -fPIC is not compatible with static-linked miniperl, or
 miniperl thinking it's statically linked.
 I suspect that the register for PIC is not either properly set, or the it's
 using wrong register for PIC access.
 
 On Intel machine, the objects compiled with -fPIC links fine with miniperl.
 
 Someone with the knowledge of ARM linkage model should be able to at least
 diag the issue more precisely, or suggest appropriate compile/link options.
 
 Another possible work around is to build the perl as statically linked
 binary and not create libperl.so.
 
 -- Tai
 
 --20cf30781540855aea04ad94704f
 Content-Type: text/html; charset=UTF-8
 Content-Transfer-Encoding: quoted-printable
 
 I have built miniperl that runs by removing=C2=A0 &quot;-DPIC -fPIC&quot; f=
 rom the c flags everywhere.<br>After &quot;make build&quot; fails at minipe=
 rl core dump, I removed the *.o, and removed &quot;-DPIC -fPIC&quot; from m=
 ake files, cflags, etc.<br>
 Then, I restarted the build in the work/perl-5-12.4 directory with gmake.<b=
 r>This builds miniperl that runs.<br><br>miniperl crashes regardless of deb=
 ug or optimized build. <br>So, this is not a compiler optimization problem.=
 <br>
 <br>From those two, the reason of miniperl core dump may be because the obj=
 ects compiled with -fPIC is not compatible with static-linked miniperl, or =
 miniperl thinking it&#39;s statically linked.<br>I suspect that the registe=
 r for PIC is not either properly set, or the it&#39;s using wrong register =
 for PIC access.<br>
 <br>On Intel machine, the objects compiled with -fPIC links fine with minip=
 erl.<br><br>Someone with the knowledge of ARM linkage model should be able =
 to at least diag the issue more precisely, or suggest appropriate compile/l=
 ink options.<br>
 <br>Another possible work around is to build the perl as statically linked =
 binary and not create libperl.so.<br>
 <br>-- Tai<br><br>
 
 --20cf30781540855aea04ad94704f--


More information about the freebsd-arm mailing list