all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw@netris.org>
Cc: guix-devel@gnu.org
Subject: Re: Problem with natively-built armhf bootstrap compiler
Date: Fri, 02 Jan 2015 22:06:26 +0100	[thread overview]
Message-ID: <87k314gael.fsf@gnu.org> (raw)
In-Reply-To: <871tnd6as5.fsf@netris.org> (Mark H. Weaver's message of "Thu, 01 Jan 2015 23:56:10 -0500")

[-- Attachment #1: Type: text/plain, Size: 983 bytes --]

Mark H Weaver <mhw@netris.org> skribis:

> Mark H Weaver <mhw@netris.org> writes:
>
>> I was able to natively build bootstrap tarballs on the Novena.  However,
>> the compiler in these new bootstrap tarballs is broken.  The problem is
>> that the new compiler driver (gcc) passes -lgcc_s when linking, but
>> libgcc_s.so does not exist in the gcc bootstrap tarball.
>
> [...]
>
>> It turns out that the "-lgcc_s" above was added just a few days after
>> we generated our last set of bootstrap tarballs, in commit a7bf595ff.
>>
>> I guess that ever since that commit, any natively-built bootstrap
>> tarballs we generated for any platform would have created a broken
>> compiler, and that this is the first time we've tried since then.

Doh!

>> 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:


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: Type: text/x-patch, Size: 844 bytes --]

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=~a/lib %{!static-libgcc:-rpath=~a/lib64 -rpath=~a/lib -lgcc_s}} \" ~a"
+\"-L~a/lib %{!static:-rpath=~a/lib %{!static-libgcc:-rpath=~a/lib64 -rpath=~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\"

[-- Attachment #3: Type: text/plain, Size: 165 bytes --]


I believe this is enough to address what the comment mentions (glibc
dlopening libgcc_s for pthread functions), but this will need testing.

WDYT?

Ludo’.

  reply	other threads:[~2015-01-02 21:06 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-31 17:31 Preliminary 'wip-armhf' branch pushed Mark H Weaver
2014-12-31 17:47 ` John Darrington
2014-12-31 19:23   ` Mark H Weaver
2014-12-31 20:20     ` John Darrington
2014-12-31 23:40       ` Mark H Weaver
2015-01-01  6:14         ` John Darrington
2015-01-01  7:11           ` Mark H Weaver
2015-01-01  7:24             ` John Darrington
2015-01-01 18:22               ` Mark H Weaver
2015-01-01 19:04                 ` John Darrington
2015-01-02 20:48     ` Ludovic Courtès
2015-01-02 22:07       ` Mark H Weaver
2015-01-03 19:07         ` Ludovic Courtès
2014-12-31 22:24 ` Mark H Weaver
2014-12-31 22:55   ` Mark H Weaver
2015-01-01 18:53 ` Problem with natively-built armhf bootstrap compiler Mark H Weaver
2015-01-02  2:19   ` Mark H Weaver
2015-01-02  4:56     ` Mark H Weaver
2015-01-02 21:06       ` Ludovic Courtès [this message]
2015-01-03 18:37         ` Mark H Weaver
2015-01-07 13:15           ` Ludovic Courtès
2015-01-07 15:15             ` Mark H Weaver
2015-01-07 15:30               ` [PATCH] gnu: gcc-static: Remove -lgcc_s from GNU_USER_TARGET_LIB_SPEC Mark H Weaver
2015-01-07 17:15                 ` Ludovic Courtès
2015-01-02 20:45 ` Preliminary 'wip-armhf' branch pushed Ludovic Courtès
2015-01-03 18:49   ` Mark H Weaver

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87k314gael.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=guix-devel@gnu.org \
    --cc=mhw@netris.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.