From: Mark H Weaver <mhw@netris.org>
To: guix-devel@gnu.org
Subject: Re: Problem with natively-built armhf bootstrap compiler
Date: Thu, 01 Jan 2015 21:19:32 -0500 [thread overview]
Message-ID: <8761cp6i17.fsf@netris.org> (raw)
In-Reply-To: <87a9225o3z.fsf@netris.org> (Mark H. Weaver's message of "Thu, 01 Jan 2015 13:53:36 -0500")
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.
[...]
> * The new (broken) one passes the following extra flags to 'collect2':
> "-L/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-2.20/lib
> -rpath=/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-glibc-2.20/lib
> -rpath=/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-gcc-static-4.8.4/lib64
> -rpath=/gnu/store/eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-gcc-static-4.8.4/lib
> -lgcc_s"
These new flags directly correspond to the modification we make to
GNU_USER_TARGET_LIB_SPEC in the pre-configure phase of our gcc-4.7
package in gcc.scm (and inherited by our other gcc packages):
--8<---------------cut here---------------start------------->8---
;; Tell where to find libstdc++, libc, and `?crt*.o', except
;; `crt{begin,end}.o', which come with GCC.
(substitute* (find-files "gcc/config"
"^gnu-user.*\\.h$")
(("#define GNU_USER_TARGET_LIB_SPEC (.*)$" _ suffix)
;; Help libgcc_s.so be found (see also below.) Always use
;; '-lgcc_s' so that libgcc_s.so is always found by those
;; programs that use 'pthread_cancel' (glibc dlopens
;; libgcc_s.so when pthread_cancel support is needed, but
;; having it in the application's RUNPATH isn't enough; see
;; <http://sourceware.org/ml/libc-help/2013-11/msg00023.html>.)
(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"
libc libc libdir libdir suffix))
--8<---------------cut here---------------end--------------->8---
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.
Any suggestions on how best to fix this? My first crude idea is to
simply remove the "-lgcc_s" from %gcc-static. Thoughts?
Mark
next prev parent reply other threads:[~2015-01-02 2:19 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 [this message]
2015-01-02 4:56 ` Mark H Weaver
2015-01-02 21:06 ` Ludovic Courtès
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=8761cp6i17.fsf@netris.org \
--to=mhw@netris.org \
--cc=guix-devel@gnu.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.