Hey Ludo,

I have reproduced the problem on the latest master targeting i686-linux
and arm-linux-gnueabihf.

The problem is that those libraries will fail to build when glibc is not
present. Also if target os is none, this problem will not appear because
the libs will not get built at all.

You can reproduce it with ./pre-inst-env guix build -e '((@@(gnu
packages cross-base) cross-gcc) "arm-linux-gnueabihf")'

This does not happen when targeting mips.

I have added an explanation to the patch and a link to this thread.

Manolis
>From dc8154ef19bc28886f350f42c49fb7995eefcec8 Mon Sep 17 00:00:00 2001
From: Manolis Ragkousis <manolis...@gmail.com>
Date: Tue, 16 Feb 2016 15:06:33 +0200
Subject: [PATCH] gnu: cross-gcc-arguments: Disable libitm, libvtv and
 libsanitizer.

* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Add
  "--disable-libitm", "--disable-libvtv" and "--disable-libsanitizer"
  when libc is not present.
---
 gnu/packages/cross-base.scm | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm
index 8bd599c..bd7a1e7 100644
--- a/gnu/packages/cross-base.scm
+++ b/gnu/packages/cross-base.scm
@@ -120,6 +120,14 @@ may be either a libc package or #f.)"
                                "--disable-libquadmath"
                                "--disable-decimal-float" ;would need libc
                                "--disable-libcilkrts"
+
+                               ;; When target is any OS other than 'none' these
+                               ;; libraries will fail if there is no libc
+                               ;; present. See
+                               ;; <https://lists.gnu.org/archive/html/guix-devel/2016-02/msg01311.html>
+                               "--disable-libitm"
+                               "--disable-libvtv"
+                               "--disable-libsanitizer"
                                )))
 
                  ,(if libc
-- 
2.7.2

Reply via email to