From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paul Boddie Subject: Re: Bootstrapping on a new platform Date: Fri, 8 Dec 2017 14:40:14 +0100 Message-ID: <201712081440.15176.paul@boddie.org.uk> References: <201712030017.19982.paul@boddie.org.uk> <201712041924.26463.paul@boddie.org.uk> <877etx1pk9.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]:59830) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1eNItB-0005Vx-I8 for help-guix@gnu.org; Fri, 08 Dec 2017 08:40:31 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1eNIt6-0007rf-Ay for help-guix@gnu.org; Fri, 08 Dec 2017 08:40:29 -0500 Received: from mail6.webfaction.com ([31.170.123.134]:42538 helo=smtp.webfaction.com) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1eNIt5-0007lf-Md for help-guix@gnu.org; Fri, 08 Dec 2017 08:40:24 -0500 In-Reply-To: <877etx1pk9.fsf@gnu.org> 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: Ludovic =?utf-8?q?Court=C3=A8s?= Cc: help-guix@gnu.org On Friday 8. December 2017 11.28.38 Ludovic Court=C3=A8s wrote: >=20 > Paul Boddie skribis: > > These steps are what I thought might be needed. So, I did the following > > on my i386-linux-gnu system: > >=20 > > tar zxf guix-0.13.0.tar.gz >=20 > 0.14.0 was released yesterday, I=E2=80=99d suggest starting from that. I was actually drafting a mail about that yesterday, but that is another st= ory=20 with different complications (building Guile-Git, scheme-bytestructures). > > # Add to gnu/packages/bootstrap.scm: > > # ((string=3D? system "mipsel-linux") "/lib/ld.so.1") > > make > > sudo make install > >=20 > > This got me the daemon again. Having set up the build users and group, I > > then started the daemon... > >=20 > > sudo /usr/local/bin/guix-daemon --build-users-group=3Dguixbuild >=20 > > ...and ran the build command for the binaries: > I=E2=80=99d suggest enabling substitutes if you don=E2=80=99t want to bui= ld everything > locally: >=20 > https://www.gnu.org/software/guix/manual/html_node/Substitutes.html I wouldn't mind building things locally, though. Previously, I wanted to av= oid=20 building cross-compilers, but this time I'm trying to do the whole thing. > > guix build --target=3Dmipsel-linux-gnu bootstrap-tarballs > >=20 > > I then got a couple of errors that halted the build process. Here's the > > start of the first error: > >=20 > > output path > > `/gnu/store/1j3mqrcp3y4xlb9jl5d0ri5aszn8mfii-gcc-4.9.4.tar.bz2' should > > have sha256 hash > > `14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc', instead has > > `1z91vb2i4d61fbrz7hdrsxiw3ksdzf372bgdzwsn75b72ndbi6lg' >=20 > That would suggest either that gcc-4.9.4.tar.bz2 was modified on > ftp.gnu.org (unlikely), or that there=E2=80=99s something fishy going on = on the > network (captive portal, DNS hijacking, etc.) Ideas? I do wonder about this kind of thing, but I'm using fibre-based broadband.= =20 Could it be mirroring issues? I tend to get checksum issues when updating=20 recent Debian releases that are resolved when retrying and that I've regard= ed=20 as being related to files being updated when apt tries to read them all, bu= t I=20 suppose there could be other things happening. (I also used to get this on = a=20 previous cable-based broadband provider, though.) Actually, running sha256sum yields this: sha256sum /gnu/store/1j3mqrcp3y4xlb9jl5d0ri5aszn8mfii-gcc-4.9.4.tar.bz2=20 326efcf243fd917d5e57b930cc8b51c79260176099fd4f5cbc38b1473bd246a3 =20 /gnu/store/1j3mqrcp3y4xlb9jl5d0ri5aszn8mfii-gcc-4.9.4.tar.bz2 Is this the right way of generating the hash? > > Running the build command again seems to either resolve this problem or > > make it go away somehow. However, I then get a persistent error: > >=20 > > guix build: error: build failed: cloning builder process: Invalid > > argument > >=20 > > Looking at the archives, I see that this happened before (reported by > > Efraim): > >=20 > > https://lists.gnu.org/archive/html/guix-devel/2016-07/msg00144.html > >=20 > > 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: > >=20 > > clone(child_stack=3D0, > > flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, > > child_tidptr=3D0x404c5f28) =3D 25426 >=20 > Could you search in the strace output for the =E2=80=98clone=E2=80=99 cal= l that failed > with EINVAL? It=E2=80=99s probably the one from nix/libstore/build.cc. There isn't one that I can find. All I get is this: write(2, "accepted connection from pid 157"..., 46accepted connection from = pid=20 1570, user paulb ) =3D 46 clone(child_stack=3D0, flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGC= HLD,=20 child_tidptr=3D0x404c5f28) =3D 1572 close(4) =3D 0 accept(3, 0xbfb09d84, [110]) =3D ? ERESTARTSYS (To be restarted = if=20 SA_RESTART is set) =2D-- SIGCHLD {si_signo=3DSIGCHLD, si_code=3DCLD_EXITED, si_pid=3D1572, si_= uid=3D0,=20 si_status=3D0, si_utime=3D61, si_stime=3D6} --- waitpid(-1, NULL, WNOHANG) =3D 1572 waitpid(-1, NULL, WNOHANG) =3D -1 ECHILD (No child processes) sigreturn() (mask []) =3D -1 EINTR (Interrupted system ca= ll) > > 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. >=20 > What kernel version do you use? guix-daemon requires namespace support, > but this is a relatively old feature. This is an older kernel: 3.2.62. I chose this a while ago when setting up=20 various instances, and this was something that I knew worked with the Debia= n=20 versions I wanted to run. > Otherwise it might be some limitation of User Mode Linux; I=E2=80=99ve ne= ver > tried. I tried UML with a 4.9.67 kernel (and CONFIG_NAMESPACES=3Dy) but still got = the=20 error. There's still only one clone system call: write(2, "accepted connection from pid 721"..., 45accepted connection from = pid=20 721, user paulb ) =3D 45 clone(child_stack=3D0, flags=3DCLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGC= HLD,=20 child_tidptr=3D0x404c5f28) =3D 723 close(4) =3D 0 accept(3, 0xbf8bc244, [110]) =3D ? ERESTARTSYS (To be restarted = if=20 SA_RESTART is set) =2D-- SIGCHLD {si_signo=3DSIGCHLD, si_code=3DCLD_EXITED, si_pid=3D723, si_u= id=3D0,=20 si_status=3D0, si_utime=3D4, si_stime=3D252} --- waitpid(-1, NULL, WNOHANG) =3D 723 waitpid(-1, NULL, WNOHANG) =3D -1 ECHILD (No child processes) sigreturn() (mask [RT_2]) =3D -1 EINTR (Interrupted system ca= ll) I'm tracing the daemon here. Should I also be tracing something else? Thanks for the help! Paul