From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Cross-building GuixSD (and maybe using pre-built toolchains) Date: Thu, 01 Sep 2016 21:43:38 +0200 Message-ID: <87twdzwglx.fsf@gnu.org> References: <201608302326.38349.paul@boddie.org.uk> <201608312349.49957.paul@boddie.org.uk> <87shtkujko.fsf@gnu.org> <201609011751.42108.paul@boddie.org.uk> 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]:48548) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bfXtp-00028u-PZ for help-guix@gnu.org; Thu, 01 Sep 2016 15:43:46 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bfXtm-00064y-H9 for help-guix@gnu.org; Thu, 01 Sep 2016 15:43:45 -0400 In-Reply-To: <201609011751.42108.paul@boddie.org.uk> (Paul Boddie's message of "Thu, 1 Sep 2016 17:51:41 +0200") List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Paul Boddie Cc: help-guix@gnu.org Paul Boddie skribis: > When you write "cross-compile from x86_64" do you mean run a cross-compil= er on=20 > an x86_64 host that targets another architecture? (I'm guessing "yes".) Yes. > From previous questions, it appears that any compiler must have been buil= t=20 > specifically for Guix to use (and cannot be those those pre-built toolcha= ins=20 > provided by, say, Debian), so would these cross-compilers be the ones nor= mally=20 > used to generate the "bootstrap binaries" (that would normally be used to= then=20 > build packages on the target system)? Yes, Guix packages only depend on other Guix packages; there cannot be dependencies on external packages. > Or do I first bootstrap Guix on my (x86_64, in this example) "build syste= m",=20 > then generate special cross-compilers for my target architecture (that ar= e=20 > then exposed via offloading)? Offloading and cross-compilation are unrelated. Offloading is just a mechanism that allows distributed builds. Guix supports x86_64-linux-gnu, so, IOW, the distro is already =E2=80=9Cbootstrapped=E2=80=9D for that platform. There=E2=80=99s nothing = special to be done. I=E2=80=99m trying to find ways to rephrase this, but I can=E2=80=99t think= of other ways than what the =E2=80=9CBootstrapping=E2=80=9D and =E2=80=9CPorting=E2= =80=9D sections of the manuals say. :-) > And can I provide a foreign architecture build daemon on the same machine= as=20 > the one performing the build? No. > Sorry if this is all obvious or if I'm not assuming that what is possible= is=20 > actually possible! I'm used to discovering limitations with build systems= . (To=20 > me it is remarkable that given all the portable things like shell scripts= that=20 > do a lot of the lifting in build processes, many build systems have an=20 > unreasonable affinity to the build host's architecture.) > > Thanks for all the help! No problem! I realize it can be difficult to convey the big picture of Guix here to someone already familiar with other build systems. Ludo=E2=80=99.