From owner-freebsd-arm@FreeBSD.ORG Tue Jun 5 15:09:19 2012 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5EF561065670 for ; Tue, 5 Jun 2012 15:09:19 +0000 (UTC) (envelope-from jps@semihalf.com) Received: from smtp.semihalf.com (smtp.semihalf.com [213.17.239.109]) by mx1.freebsd.org (Postfix) with ESMTP id 112B58FC14 for ; Tue, 5 Jun 2012 15:09:19 +0000 (UTC) Received: from localhost (unknown [213.17.239.109]) by smtp.semihalf.com (Postfix) with ESMTP id 76B6DC3CBC; Tue, 5 Jun 2012 17:09:07 +0200 (CEST) X-Virus-Scanned: by amavisd-new at semihalf.com Received: from smtp.semihalf.com ([213.17.239.109]) by localhost (smtp.semihalf.com [213.17.239.109]) (amavisd-new, port 10024) with ESMTP id w0ZYY2OL7Wvo; Tue, 5 Jun 2012 17:09:07 +0200 (CEST) Received: from [10.0.0.3] (cardhu.semihalf.com [213.17.239.108]) by smtp.semihalf.com (Postfix) with ESMTPSA id E6650C3842; Tue, 5 Jun 2012 17:09:06 +0200 (CEST) Message-ID: <4FCE211D.10204@semihalf.com> Date: Tue, 05 Jun 2012 17:09:17 +0200 From: Jan Sieka User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:12.0) Gecko/20120506 Thunderbird/12.0.1 MIME-Version: 1.0 To: Ian Lepore Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-arm@freebsd.org Subject: 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: Tue, 05 Jun 2012 15:09:19 -0000 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? Best regards, Jan Sieka