From owner-freebsd-arm@freebsd.org Thu May 18 00:04:02 2017 Return-Path: Delivered-To: freebsd-arm@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4C46FD71A26 for ; Thu, 18 May 2017 00:04:02 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: from asp.reflexion.net (outbound-mail-210-6.reflexion.net [208.70.210.6]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E7D87A8B for ; Thu, 18 May 2017 00:04:01 +0000 (UTC) (envelope-from markmi@dsl-only.net) Received: (qmail 2882 invoked from network); 18 May 2017 00:05:14 -0000 Received: from unknown (HELO mail-cs-02.app.dca.reflexion.local) (10.81.19.2) by 0 (rfx-qmail) with SMTP; 18 May 2017 00:05:14 -0000 Received: by mail-cs-02.app.dca.reflexion.local (Reflexion email security v8.40.0) with SMTP; Wed, 17 May 2017 20:03:59 -0400 (EDT) Received: (qmail 30774 invoked from network); 18 May 2017 00:03:59 -0000 Received: from unknown (HELO iron2.pdx.net) (69.64.224.71) by 0 (rfx-qmail) with (AES256-SHA encrypted) SMTP; 18 May 2017 00:03:59 -0000 Received: from [192.168.1.106] (c-76-115-7-162.hsd1.or.comcast.net [76.115.7.162]) by iron2.pdx.net (Postfix) with ESMTPSA id 13BBCEC9380; Wed, 17 May 2017 17:03:59 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3273\)) Subject: Re: build failure with crochet for rpi3 using freebsd-11-stable sources From: Mark Millard In-Reply-To: Date: Wed, 17 May 2017 17:03:58 -0700 Cc: tech lists , freebsd-arm@freebsd.org Content-Transfer-Encoding: 7bit Message-Id: <343BCB48-F1EB-4A87-8E88-FA69F6E176D7@dsl-only.net> References: <20170517135047.0803ad60@pumpkin.growveg.org> To: Jonathan Chen X-Mailer: Apple Mail (2.3273) X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 May 2017 00:04:02 -0000 On 2017-May-17, at 4:19 PM, Jonathan Chen wrote: > On 18 May 2017 at 00:50, tech lists wrote: >> Hello list, >> >> Building on a r318366 freebsd-11-stable machine, using >> freebsd/crochet installed today with fresh (r318397) sources, I'm >> getting the following error trying to build, for the raspberry pi3, a >> freebsd-11-stable image: >> >> --- libc.so.7.full --- >> /usr/local/aarch64-freebsd/bin/ld: getutxent.pico(.debug_info+0x3b): >> R_AARCH64_ABS64 used with TLS symbol >> udb /usr/local/aarch64-freebsd/bin/ld: >> getutxent.pico(.debug_info+0x58): R_AARCH64_ABS64 used with TLS symbol >> uf /usr/local/aarch64-freebsd/bin/ld: utxdb.pico(.debug_info+0x5a): >> R_AARCH64_ABS64 used with TLS symbol >> futx_to_utx.ut /usr/local/aarch64-freebsd/bin/ld: >> jemalloc_tsd.pico(.debug_info+0x3c): R_AARCH64_ABS64 used with TLS >> symbol __je_tsd_tls /usr/local/aarch64-freebsd/bin/ld: >> jemalloc_tsd.pico(.debug_info+0x1433): R_AARCH64_ABS64 used with TLS >> symbol __je_tsd_initialized /usr/local/aarch64-freebsd/bin/ld: >> cxa_thread_atexit_impl.pico(.debug_info+0x3b): R_AARCH64_ABS64 used >> with TLS symbol dtors /usr/local/aarch64-freebsd/bin/ld: >> xlocale.pico(.debug_info+0x403): R_AARCH64_ABS64 used with TLS symbol >> __thread_locale /usr/local/aarch64-freebsd/bin/ld: >> setrunelocale.pico(.debug_info+0x3c): R_AARCH64_ABS64 used with TLS >> symbol _ThreadRuneLocale cc: error: linker command failed with exit >> code 1 (use -v to see invocation) *** [libc.so.7.full] Error code 1 >> > > There's a bug report filed: > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218198 > > The workaround is add the following in /etc/src.conf: > WITHOUT_DEBUG_FILES=yes Comments 6 and 8 on bugzilla 218198 indicate that the following combination will fail: WITH_DEBUG= WITHOUT_DEBUG_FILES= So it is WITH_DEBUG= that must be avoided (explicit or implicit). There is another workaround that I've added as Comment 11 and 12 (a correction to what I typed in 11), one that keeps most debug information in a usable form: A workaround for svnlite/svn folks that use source builds is to do something like: svnlite update -r436731 /usr/ports/devel/*binutils to revert to the source for 2.27 vintage binutils and then rebuild the binutils that you use. Then use these older binutils. Because of slave-port relationships the main host binutils needs to be reverted as part of this, not just the target machine's binutils. This will still produce the warnings but changes the return code from ld to allow things to continue with somewhat messed up debug information. 2.28's return code is probably correct long term and this is just a temporary hack until the input to ld is correct so that 2.28 has nothing to cause the non-zero return code. === Mark Millard markmi at dsl-only.net