From owner-freebsd-arm@FreeBSD.ORG Sat Jun 9 16:11:35 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7733E106566C for ; Sat, 9 Jun 2012 16:11:35 +0000 (UTC) (envelope-from tim@kientzle.com) Received: from monday.kientzle.com (99-115-135-74.uvs.sntcca.sbcglobal.net [99.115.135.74]) by mx1.freebsd.org (Postfix) with ESMTP id 510F18FC1A for ; Sat, 9 Jun 2012 16:11:35 +0000 (UTC) Received: (from root@localhost) by monday.kientzle.com (8.14.4/8.14.4) id q59GBUJB041843; Sat, 9 Jun 2012 16:11:30 GMT (envelope-from tim@kientzle.com) Received: from [192.168.2.143] (CiscoE3000 [192.168.1.65]) by kientzle.com with SMTP id aefuvczdiuiewj8q8uua4ypy8w; Sat, 09 Jun 2012 16:11:30 +0000 (UTC) (envelope-from tim@kientzle.com) Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=iso-8859-1 From: Tim Kientzle In-Reply-To: <4FCE211D.10204@semihalf.com> Date: Sat, 9 Jun 2012 09:11:30 -0700 Content-Transfer-Encoding: 7bit Message-Id: <0FE5C5BF-FADE-49BA-BF38-00018A752F14@kientzle.com> References: <4FCE211D.10204@semihalf.com> To: Jan Sieka X-Mailer: Apple Mail (2.1278) Cc: freebsd-arm@freebsd.org Subject: Re: Possible fix for Perl failing with ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds" on ARM X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jun 2012 16:11:35 -0000 On Jun 5, 2012, at 8:09 AM, Jan Sieka wrote: > Hello Ian! > > I tried recently to compile and run Perl 5.12 on ARM (SheevaPlug) using > HEAD from 22.05.2012 and got the following error while trying to run: > /usr/ports/lang/perl5.12 # make test > [...] > ../lib/auto/POSIX/POSIX.so: Undefined symbol "__flt_rounds > [...] > > After investigating the issue it appeared that __flt_rounds symbol is > not exported by libc. Applying the following patch, recompilling world > and Perl fixed the problem and allowed to use Perl on SheevaPlug: > > diff --git a/lib/libc/arm/Symbol.map b/lib/libc/arm/Symbol.map > index e8c7f1d..8cdcdaf 100644 > --- a/lib/libc/arm/Symbol.map > +++ b/lib/libc/arm/Symbol.map > @@ -70,6 +70,7 @@ FBSDprivate_1.0 { > __divdf3; > __floatsisf; > __floatsidf; > + __flt_rounds; > __fixsfsi; > __fixdfsi; > __fixunssfsi; > > Can you comment whether this is a correct solution? Great! I had the same problem compiling Python last week and had planned to track it down. I just committed this to -CURRENT and will also merge it to the armv6 tree. Tim