From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark H Weaver Subject: bug#21610: FreeBSD compilation problem (errno_location) Date: Sun, 04 Oct 2015 14:02:43 -0400 Message-ID: <877fn2v7ek.fsf@netris.org> References: <20151003015620.GA2276@zeus.Speedport_W_723V_1_32_000> <87io6ob74s.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]:51816) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zindm-0007fU-GC for bug-guix@gnu.org; Sun, 04 Oct 2015 14:04:07 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zindi-00011w-FE for bug-guix@gnu.org; Sun, 04 Oct 2015 14:04:06 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:37353) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zindi-00011s-CZ for bug-guix@gnu.org; Sun, 04 Oct 2015 14:04:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1Zindi-0002nt-4J for bug-guix@gnu.org; Sun, 04 Oct 2015 14:04:02 -0400 Sender: "Debbugs-submit" Resent-Message-ID: In-Reply-To: <87io6ob74s.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Sat, 03 Oct 2015 12:04:19 +0200") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org To: 21610@debbugs.gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) writes: > Janus Troelsen skribis: > >> I know FreeBSD is not officially supported, but I don't see why it shoul= dn't be? Many GNU tools work on FreeBSD. > > Guix depends on the availability of the GNU C Library, with either the > Linux-libre kernel or the Hurd. So it cannot be used at all on FreeBSD. I'd like to expand on this. When Guix builds packages, the container in which software is built does not use any software or libraries from the host system at all. The only part of the host system that we use, implicitly, is the kernel. Guix is bootstrapped in a manner analogous to Cross [GNU/]Linux from Scratch, starting from statically "bootstrap binaries" that we provide for each supported architecture/kernel combination. At present, we provide bootstrap binaries for x86_64, i686, mips64el, and armhf on top of Linux (the kernel), and soon we will support the Hurd as well. Unless the FreeBSD kernel is able to emulate Linux (the kernel) sufficiently well to run our binaries for GNU/Linux unmodified, and to convince 'configure' scripts and other build systems that the kernel is Linux, using Guix on top of FreeBSD will involve porting it, as described in section 7.8 (Porting to a New Platform) in the Guix manual. As Ludovic pointed out, such a port would still need to use GNU libc, and would use all of the GNU userland on top, so only the kernel from FreeBSD would be used. Regards, Mark