[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’.
- Bootstrapping on a new platform, Paul Boddie, 2017/12/02
- Re: Bootstrapping on a new platform, Manolis Ragkousis, 2017/12/03
- Re: Bootstrapping on a new platform, Efraim Flashner, 2017/12/03
- Re: Bootstrapping on a new platform, Paul Boddie, 2017/12/04
- Re: Bootstrapping on a new platform,
Ludovic Courtès <=
- Re: Bootstrapping on a new platform, Paul Boddie, 2017/12/08
- Re: Bootstrapping on a new platform, Paul Boddie, 2017/12/08
- Re: Bootstrapping on a new platform, Ludovic Courtès, 2017/12/11
- Re: Bootstrapping on a new platform, Paul Boddie, 2017/12/11
- Re: Bootstrapping on a new platform, Ludovic Courtès, 2017/12/12
- Re: Bootstrapping on a new platform, Paul Boddie, 2017/12/12