From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: Re: Problem with natively-built armhf bootstrap compiler Date: Sat, 03 Jan 2015 13:37:44 -0500 Message-ID: <87mw5zyakn.fsf@netris.org> References: <87lhln7mlk.fsf@netris.org> <87a9225o3z.fsf@netris.org> <8761cp6i17.fsf@netris.org> <871tnd6as5.fsf@netris.org> <87k314gael.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:46123) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y7TZc-0000g8-EA for guix-devel@gnu.org; Sat, 03 Jan 2015 13:37:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y7TZY-0001vx-SM for guix-devel@gnu.org; Sat, 03 Jan 2015 13:37:16 -0500 In-Reply-To: <87k314gael.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Fri, 02 Jan 2015 22:06:26 +0100") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel@gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Mark H Weaver skribis: > >> Mark H Weaver writes: >> >>> Any suggestions on how best to fix this? My first crude idea is to >>> simply remove the "-lgcc_s" from %gcc-static. >> >> For now, this is the approach I took, in commit 5336e4c74. > > Sounds good. > > I was tempting to do something like this: > > diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm > index a7156bf..dd33a26 100644 > --- a/gnu/packages/gcc.scm > +++ b/gnu/packages/gcc.scm > @@ -213,7 +213,7 @@ where the OS part is overloaded to denote a specific = ABI---into GCC > ;; below, make sure to update the relevant code in > ;; %gcc-static package as needed. > (format #f "#define GNU_USER_TARGET_LIB_SPEC \ > -\"-L~a/lib %{!static:-rpath=3D~a/lib %{!static-libgcc:-rpath=3D~a/lib64 = -rpath=3D~a/lib -lgcc_s}} \" ~a" > +\"-L~a/lib %{!static:-rpath=3D~a/lib %{!static-libgcc:-rpath=3D~a/lib64 = -rpath=3D~a/lib %{pthread: -lgcc_s}}} \" ~a" > libc libc libdir libdir suffix)) > (("#define GNU_USER_TARGET_STARTFILE_SPEC.*$" line) > (format #f "#define STANDARD_STARTFILE_PREFIX_1 \"~a/= lib\" > > I believe this is enough to address what the comment mentions (glibc > dlopening libgcc_s for pthread functions), but this will need testing. > > WDYT? I confess I don't know enough about the relevant details to know whether this would work reliably -- e.g. will -pthread always be passed to gcc at link time whenever this problem would arise? -- but it certainly looks like a cleaner solution in principle. I'm glad to defer to your judgement on how best to fix this :) Thanks! Mark