[core-updates] [PATCH] gnu: gcc: Fix i686-linux cross compiler.

DoneSubmitted by Jan Nieuwenhuizen.
Details
3 participants
  • Jan Nieuwenhuizen
  • Ludovic Courtès
  • Marius Bakke
Owner
unassigned
Severity
normal
J
J
Jan Nieuwenhuizen wrote on 29 Sep 2019 13:21
(address . bug-guix@gnu.org)
8736gf4ac8.fsf@gnu.org
Running
./pre-inst-env guix build --target=i686-unknown-linux-gnu hello
on core-updates (and similarly on core-updates-next) fails with
Toggle snippet (7 lines)checking for i686-unknown-linux-gnu-gcc... /tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/xgcc -B/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/bin/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/lib/ -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/include -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/sys-include checking for C compiler default output file name... configure: error: in `/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/i686-unknown-linux-gnu/libmpx':configure: error: C compiler cannot create executablesSee `config.log' for more details.
The attached patch fixes this.
I stumbled upon this while working to fix #37549. Where should thispatch land?
Greetings,janneke
From 522aac698a66ca8ab73ac3827c61cb65627684d3 Mon Sep 17 00:00:00 2001From: Jan Nieuwenhuizen <janneke@gnu.org>Date: Sun, 29 Sep 2019 13:08:01 +0200Subject: [PATCH] gnu: gcc: Fix i686-linux cross compiler.
This resurrects
./pre-inst-env guix build --target=i686-unknown-linux-gnu hello
* gnu/packages/cross-base.scm (cross-gcc-arguments): Do not build libmpx;does not cross-configure.--- gnu/packages/cross-base.scm | 1 + 1 file changed, 1 insertion(+)
Toggle diff (14 lines)diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scmindex 7108000f06..fab4636450 100644--- a/gnu/packages/cross-base.scm+++ b/gnu/packages/cross-base.scm@@ -144,6 +144,7 @@ base compiler and using LIBC (which may be either a libc package or #f.)" "--disable-libatomic" "--disable-libmudflap" "--disable-libgomp"+ "--disable-libmpx" ; C compiler cannot create executables "--disable-libssp" "--disable-libquadmath" "--disable-decimal-float" ;would need libc-- 2.23.0
-- Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.orgFreelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
M
M
Marius Bakke wrote on 29 Sep 2019 14:15
87sgof8fjg.fsf@devup.no
Jan Nieuwenhuizen <janneke@gnu.org> writes:
Toggle quote (19 lines)> Running>> ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello>> on core-updates (and similarly on core-updates-next) fails with>> --8<---------------cut here---------------start------------->8---> checking for i686-unknown-linux-gnu-gcc... /tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/xgcc -B/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/./gcc/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/bin/ -B/gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/lib/ -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/include -isystem /gnu/store/p4x4981zidgq36rjkx0bxb466s81xk2z-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0/i686-unknown-linux-gnu/sys-include > checking for C compiler default output file name... > configure: error: in `/tmp/guix-build-gcc-cross-sans-libc-i686-unknown-linux-gnu-7.4.0.drv-0/build/i686-unknown-linux-gnu/libmpx':> configure: error: C compiler cannot create executables> See `config.log' for more details.> --8<---------------cut here---------------end--------------->8--->> The attached patch fixes this.>> I stumbled upon this while working to fix #37549. Where should this> patch land?
This patch should be safe for 'core-updates'. Please double check thatit does not rebuild the world, though. :-)
Toggle quote (12 lines)> From 522aac698a66ca8ab73ac3827c61cb65627684d3 Mon Sep 17 00:00:00 2001> From: Jan Nieuwenhuizen <janneke@gnu.org>> Date: Sun, 29 Sep 2019 13:08:01 +0200> Subject: [PATCH] gnu: gcc: Fix i686-linux cross compiler.>> This resurrects>> ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello>> * gnu/packages/cross-base.scm (cross-gcc-arguments): Do not build libmpx;> does not cross-configure.
libmpx does not build natively either (see 01e8263febb) and has beenremoved from GCC entirely in version 9.
Toggle quote (10 lines)> diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm> index 7108000f06..fab4636450 100644> --- a/gnu/packages/cross-base.scm> +++ b/gnu/packages/cross-base.scm> @@ -144,6 +144,7 @@ base compiler and using LIBC (which may be either a libc package or #f.)"> "--disable-libatomic"> "--disable-libmudflap"> "--disable-libgomp"> + "--disable-libmpx" ; C compiler cannot create executables
IMO the comment is unnecessary. LGTM!
-----BEGIN PGP SIGNATURE-----
iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl2QoFMACgkQoqBt8qM6VPoePwf7BTtQTYKvuyNGDWJUW7GVXpkRFEgOdM5X12AmVuKlqXk/MyAH76W8OleYVZYt9MbdUVCsdv7eZ7ydqPzQpfXkDpkpGfkudu6Wvn9mrXm+XF1CvhOgnbBANsWBd9lm6E8cnc/irnplxH4iK0Y5McNUwg9SoAgBPMtpjIZmNNrpfERcE1AwqXJp8y+cEOIn/QYOJSyy7zY7MHQsQhxIAPBFzb/PJmcOGb3/yqL0vtBRzeeRcyvruadDa4sYJWrhMPUthmGPrDfXdzI2niukb6xIeK2ZWjBpiBI2iiAqEu1FdmxrTt3XeBJim98ZqVj62ehBJvfOFeB43699NeacEf0j6A===6ZiE-----END PGP SIGNATURE-----
J
J
Jan Nieuwenhuizen wrote on 29 Sep 2019 16:22
(name . Marius Bakke)(address . mbakke@fastmail.com)(address . 37550-done@debbugs.gnu.org)
87r23z2ne8.fsf@gnu.org
Marius Bakke writes:
Toggle quote (7 lines)> Jan Nieuwenhuizen <janneke@gnu.org> writes:>> I stumbled upon this while working to fix #37549. Where should this>> patch land?>> This patch should be safe for 'core-updates'. Please double check that> it does not rebuild the world, though. :-)
I was hesitating and re-checked on a fresh computer.
Toggle quote (3 lines)> libmpx does not build natively either (see 01e8263febb) and has been> removed from GCC entirely in version 9.
Ah, good to know. I was worrying about just dropping it.
Toggle quote (5 lines)>> + "--disable-libmpx" ; C compiler cannot create executables>> IMO the comment is unnecessary. LGTM!>
Removed, and pushed to core-updates as 43124a54744b64dcdbdd8f92d2a037bf8e0dd215
Thanks!janneke
-- Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.orgFreelance IT http://JoyofSource.com| Avatar® http://AvatarAcademy.com
Closed
L
L
Ludovic Courtès wrote on 1 Oct 2019 11:30
(name . Jan Nieuwenhuizen)(address . janneke@gnu.org)(address . 37550@debbugs.gnu.org)
87ftkcrewq.fsf@gnu.org
Hello,
Thanks for pushing this patch!
Jan Nieuwenhuizen <janneke@gnu.org> skribis:
Toggle quote (2 lines)> ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello
Note that on x86_64 you can perform native builds for i686 with“guix build -s i686-linux hello”.
You probably already know it but I thought I’d mention it because nativebuilds are much easier. :-)
Ludo’.
?
Your comment

This issue is archived.

To comment on this conversation send email to 37550@debbugs.gnu.org