help-guix
[Top][All Lists]
Advanced

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

Re: Bootstrapping on a new platform


From: Ludovic Courtès
Subject: Re: Bootstrapping on a new platform
Date: Fri, 08 Dec 2017 11:28:38 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Hi Paul

Paul Boddie <address@hidden> skribis:

> These steps are what I thought might be needed. So, I did the following on my 
> i386-linux-gnu system:
>
> tar zxf guix-0.13.0.tar.gz

0.14.0 was released yesterday, I’d suggest starting from that.

> # Add to gnu/packages/bootstrap.scm:
> # ((string=? system "mipsel-linux") "/lib/ld.so.1")
> make
> sudo make install
>
> This got me the daemon again. Having set up the build users and group, I then 
> started the daemon...
>
> sudo /usr/local/bin/guix-daemon --build-users-group=guixbuild
>
> ...and ran the build command for the binaries:

I’d suggest enabling substitutes if you don’t want to build everything
locally:

  https://www.gnu.org/software/guix/manual/html_node/Substitutes.html

> guix build --target=mipsel-linux-gnu bootstrap-tarballs
>
> I then got a couple of errors that halted the build process. Here's the start 
> of the first error:
>
> output path `/gnu/store/1j3mqrcp3y4xlb9jl5d0ri5aszn8mfii-gcc-4.9.4.tar.bz2' 
> should have sha256 hash 
> `14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc', instead has 
> `1z91vb2i4d61fbrz7hdrsxiw3ksdzf372bgdzwsn75b72ndbi6lg'

That would suggest either that gcc-4.9.4.tar.bz2 was modified on
ftp.gnu.org (unlikely), or that there’s something fishy going on on the
network (captive portal, DNS hijacking, etc.)  Ideas?

> Running the build command again seems to either resolve this problem or make 
> it go away somehow. However, I then get a persistent error:
>
> guix build: error: build failed: cloning builder process: Invalid argument
>
> Looking at the archives, I see that this happened before (reported by Efraim):
>
> https://lists.gnu.org/archive/html/guix-devel/2016-07/msg00144.html
>
> I didn't see any obvious conclusion. So, I ran the daemon using strace and 
> looked at the clone system call that supposedly causes this problem:
>
> clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, 
> child_tidptr=0x404c5f28) = 25426

Could you search in the strace output for the ‘clone’ call that failed
with EINVAL?  It’s probably the one from nix/libstore/build.cc.

> For the record, I'm running all this in a User Mode Linux instance, mostly 
> because my main system doesn't support the prerequisites for building Guix. 

What kernel version do you use?  guix-daemon requires namespace support,
but this is a relatively old feature.

Otherwise it might be some limitation of User Mode Linux; I’ve never
tried.

Thanks,
Ludo’.



reply via email to

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