guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: I managed to build guix natively on Debian GNU/Hurd , what's next?


From: Ricardo Wurmus
Subject: Re: I managed to build guix natively on Debian GNU/Hurd , what's next?
Date: Sat, 31 Aug 2019 14:12:25 +0200
User-agent: mu4e 1.2.0; emacs 26.2

Svante Signell <address@hidden> writes:

> On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote:
>> Svante Signell <address@hidden> writes:
>> 
>> > On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote:
>> > > Svante Signell <address@hidden> writes:
>> > > 
>> > > > Where to install the bootstrap-binaries: Natively in GNU/Hurd, which
>> > > > already
>> > > > hase.g. /bin/tar from the tar package or within Guix on amd64? But
>> > > > installing
>> > > > tar to /bin does not find that file, even with setting PATH??
>> > > 
>> > > That’s expected.  Guix will not use arbitrary binaries that happen to be
>> > > on PATH.  That’s by design.  The bootstrap binaries are at the roots of
>> > > the package graph – changes to them would result in the complete graph
>> > > to be rebuilt from scratch.
>> > 
>> > Sorry but the tarballs have files like ./bin/tar Where to unpack them, on
>> > the
>> > native Hurd image or the guix one?
>> 
>> The generated archives are to be placed in the Guix source tree under
>> gnu/packages/bootstrap/…/.
>
> Here:
> /gnu/store/2b48z82a5bjfkcqhr8d80zq1agiglyx8-guix-1ec29df/gnu/packages/bootstrap
>  
>
> or here:
> /usr/share/guile/site/2.2/gnu/packages/bootstrap/
>
> I assume the first is correct.
>
>> > How is that cross-build done? Within the Linux guix image or a Linux amd64
>> > image? And cross package build order?
>> 
>> The order doesn’t matter, because in Guix the order is fixed anyway.
>> You just build the bootstrap binaries as a single target on your
>> GNU/Linux host and you’ll end up with all the archives you’ll need to
>> copy to the Hurd target machine.
>
> I issued guix build --target=i586-pc-gnu bootstrap-tarballs in my GNU/Linux 
> Guix
> image (thanks Julien): uname -a
> Linux gnu 5.1.2-gnu #1 SMP 1 x86_64 GNU/Linux
>
> Everything looked fine until:
> g++   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti
> -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings 
> -Wcast-qual 
> -Wmissing-format-attribute -Woverloaded-virtual -pedantic -Wno-long-long -Wno-
> variadic-macros -Wno-overlength-strings   -DHAVE_CONFIG_H -DGENERATOR_FILE
> -static-libstdc++ -static-libgcc  -o build/genattrtab \
>     build/genattrtab.o build/rtl.o build/read-rtl.o build/ggc-none.o 
> build/vec.o
> build/min-insn-modes.o build/gensupport.o build/print-rtl.o build/read-md.o
> build/errors.o ../build-x86_64-unknown-linux-gnu/libiberty/libiberty.a
> build/genattrtab ../../gcc-5.5.0/gcc/common.md ../../gcc-
> 5.5.0/gcc/config/i386/i386.md insn-conditions.md \
>       -Atmp-attrtab.c -Dtmp-dfatab.c -Ltmp-latencytab.c
> make[2]: *** [Makefile:2156: s-attrtab] Killed
[…]
> which g++
> /home/guest/.guix-profile/bin/g++

This is not the GCC that’s used by Guix to build things.  See also that
during the build GCC 5.5.0 is used, not version 9.x.

What you have installed has no impact on the build environment that Guix
uses.  This is by design.

-- 
Ricardo




reply via email to

[Prev in Thread] Current Thread [Next in Thread]