* I managed to build guix natively on Debian GNU/Hurd , what's next? @ 2019-08-29 19:25 Svante Signell 2019-08-29 22:51 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-29 19:25 UTC (permalink / raw) To: guix-devel Hello, After a lot of quirks I managed to get guix built natively on Debian GNU/Hurd. What to do next? Thanks! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-29 19:25 I managed to build guix natively on Debian GNU/Hurd , what's next? Svante Signell @ 2019-08-29 22:51 ` Svante Signell 2019-08-29 23:36 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-29 22:51 UTC (permalink / raw) To: guix-devel On Thu, 2019-08-29 at 21:25 +0200, Svante Signell wrote: > Hello, > > After a lot of quirks I managed to get guix built natively on Debian > GNU/Hurd. What to do next? I managed to start the guix-daemon. Next seems to be the bootstrap binaries: guix build hello guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-29 22:51 ` Svante Signell @ 2019-08-29 23:36 ` Ricardo Wurmus 2019-08-30 12:00 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-08-29 23:36 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Hi Svante, > On Thu, 2019-08-29 at 21:25 +0200, Svante Signell wrote: >> Hello, >> >> After a lot of quirks I managed to get guix built natively on Debian >> GNU/Hurd. What to do next? > > I managed to start the guix-daemon. Next seems to be the bootstrap > binaries: > guix build hello > guix build: error: could not find bootstrap binary 'tar' for system > 'i586-gnu' You’ll need the bootstrap binaries. I have previously built them but at least “tar” segfaults. Here’s what I wrote about this on IRC: --8<---------------cut here---------------start------------->8--- <rekado> [12:36:12] gnu_srs: get a Debian GNU/Hurd, then build the Guix dependencies from source. <rekado> [12:36:28] once you’ve got everything for building Guix also fetch the bootstrap binaries: <rekado> [12:36:45] such as http://berlin.guix.gnu.org/guix/bootstrap/i586-gnu/20190508/glibc-stripped-2.28-i586-pc-gnu.tar.xz <rekado> [12:36:51] binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz <rekado> [12:36:55] gcc-stripped-5.5.0-i586-pc-gnu.tar.xz <rekado> [12:37:01] guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz <rekado> [12:37:03] static-binaries-0-i586-pc-gnu.tar.xz <rekado> [12:37:33] (you’ll find that some of the static binaries such as tar will segfault when given certain arguments) <rekado> [12:37:45] that’s where we’re at. <rekado> [12:38:00] these binaries were cross-built. --8<---------------cut here---------------end--------------->8--- Good luck! -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-29 23:36 ` Ricardo Wurmus @ 2019-08-30 12:00 ` Svante Signell 2019-08-30 17:14 ` Julien Lepiller 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-30 12:00 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-08-30 at 01:36 +0200, Ricardo Wurmus wrote: > Hi Svante, > > Here’s what I wrote about this on IRC: > > --8<---------------cut here---------------start------------->8--- > <rekado> [12:36:12] gnu_srs: get a Debian GNU/Hurd, then build the Guix > dependencies from source. > <rekado> [12:36:28] once you’ve got everything for building Guix also fetch > the bootstrap binaries: > <rekado> [12:36:45] such as > I've already built guix (and all their dependencies before that). > http://berlin.guix.gnu.org/guix/bootstrap/i586-gnu/20190508/glibc-stripped-2.28-i586-pc-gnu.tar.xz > http://berlin.guix.gnu.org/guix/bootstrap/i586-gnu/20190508/glibc-stripped-2.28-i586-pc-gnu.tar.xz > <rekado> [12:36:51] binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz > <rekado> [12:36:55] gcc-stripped-5.5.0-i586-pc-gnu.tar.xz > <rekado> [12:37:01] guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz > <rekado> [12:37:03] static-binaries-0-i586-pc-gnu.tar.xz > <rekado> [12:37:33] (you’ll find that some of the static binaries such as tar > will segfault when given certain arguments) > <rekado> [12:37:45] that’s where we’re at. > <rekado> [12:38:00] these binaries were cross-built. > --8<---------------cut here---------------end--------------->8--- Thanks I'll try to install them. It seems like gcc is a little old, do you have notes somewhere on how these cross-built packages were created? I assume they can be built them within guix e.g. on GNU/Linux amd64. Build order?: 1) binutils 2) glibc 3) gcc 4) ? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 12:00 ` Svante Signell @ 2019-08-30 17:14 ` Julien Lepiller 2019-08-30 18:25 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Julien Lepiller @ 2019-08-30 17:14 UTC (permalink / raw) To: svante.signell, Ricardo Wurmus; +Cc: guix-devel Le 30 août 2019 14:00:29 GMT+02:00, Svante Signell <svante.signell@gmail.com> a écrit : >On Fri, 2019-08-30 at 01:36 +0200, Ricardo Wurmus wrote: >> Hi Svante, >> >> Here’s what I wrote about this on IRC: >> >> --8<---------------cut here---------------start------------->8--- >> <rekado> [12:36:12] gnu_srs: get a Debian GNU/Hurd, then build the >Guix >> dependencies from source. >> <rekado> [12:36:28] once you’ve got everything for building Guix also >fetch >> the bootstrap binaries: >> <rekado> [12:36:45] such as >> > >I've already built guix (and all their dependencies before that). > >> >http://berlin.guix.gnu.org/guix/bootstrap/i586-gnu/20190508/glibc-stripped-2.28-i586-pc-gnu.tar.xz >> >http://berlin.guix.gnu.org/guix/bootstrap/i586-gnu/20190508/glibc-stripped-2.28-i586-pc-gnu.tar.xz >> <rekado> [12:36:51] >binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz >> <rekado> [12:36:55] gcc-stripped-5.5.0-i586-pc-gnu.tar.xz >> <rekado> [12:37:01] guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz >> <rekado> [12:37:03] static-binaries-0-i586-pc-gnu.tar.xz >> <rekado> [12:37:33] (you’ll find that some of the static binaries >such as tar >> will segfault when given certain arguments) >> <rekado> [12:37:45] that’s where we’re at. >> <rekado> [12:38:00] these binaries were cross-built. >> --8<---------------cut here---------------end--------------->8--- > >Thanks I'll try to install them. It seems like gcc is a little old, do >you have >notes somewhere on how these cross-built packages were created? > >I assume they can be built them within guix e.g. on GNU/Linux amd64. > >Build order?: >1) binutils >2) glibc >3) gcc >4) ? Hi, I think this is the relevant part in the manual: http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#Building-the-Bootstrap-Binaries ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 17:14 ` Julien Lepiller @ 2019-08-30 18:25 ` Svante Signell 2019-08-30 21:07 ` Svante Signell 2019-08-30 21:56 ` Julien Lepiller 0 siblings, 2 replies; 47+ messages in thread From: Svante Signell @ 2019-08-30 18:25 UTC (permalink / raw) To: Julien Lepiller, Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-08-30 at 19:14 +0200, Julien Lepiller wrote: > > a écrit : > > > Thanks I'll try to install them. It seems like gcc is a little old, do > > you have > > notes somewhere on how these cross-built packages were created? > > > I assume they can be built them within guix e.g. on GNU/Linux amd64. > > > > Build order?: > > 1) binutils > > 2) glibc > > 3) gcc > > 4) ? > > Hi, > > I think this is the relevant part in the manual: > http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#Building-the-Bootstrap-Binaries Yes, but guix build bootstrap-tarballs --system=i586-gnu on GNU/Linux amd64 results in: guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 18:25 ` Svante Signell @ 2019-08-30 21:07 ` Svante Signell 2019-08-30 21:30 ` Ricardo Wurmus 2019-08-30 21:56 ` Julien Lepiller 1 sibling, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-30 21:07 UTC (permalink / raw) To: Julien Lepiller, Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-08-30 at 20:25 +0200, Svante Signell wrote: > On Fri, 2019-08-30 at 19:14 +0200, Julien Lepiller wrote: > > > a écrit : > > > > > Thanks I'll try to install them. It seems like gcc is a little old, do > > > you have > > > notes somewhere on how these cross-built packages were created? > > > I assume they can be built them within guix e.g. on GNU/Linux amd64. > > > > > > Build order?: > > > 1) binutils > > > 2) glibc > > > 3) gcc > > > 4) ? > > > > Hi, > > > > I think this is the relevant part in the manual: > > http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#Building-the-Bootstrap-Binaries > > Yes, but guix build bootstrap-tarballs --system=i586-gnu on GNU/Linux amd64 > results in: > guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' 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?? uname -a Linux gnu 5.1.2-gnu #1 SMP 1 x86_64 GNU/Linux guix build bootstrap-tarballs --system=i586-gnu guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' which tar /bin/tar file /bin/tar /bin/tar: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), statically linked, for GNU/Hurd 0.0.0, stripped ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 21:07 ` Svante Signell @ 2019-08-30 21:30 ` Ricardo Wurmus 2019-08-30 21:52 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-08-30 21:30 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: >> Yes, but guix build bootstrap-tarballs --system=i586-gnu on GNU/Linux amd64 >> results in: >> guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' > > 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. So the binaries have a special role and usually don’t change. That’s why the fact that my bootstrap binaries use GCC 5 is not a problem. > uname -a > Linux gnu 5.1.2-gnu #1 SMP 1 x86_64 GNU/Linux > guix build bootstrap-tarballs --system=i586-gnu > guix build: error: could not find bootstrap binary 'tar' for system 'i586-gnu' You need to cross-build. x86_64 systems have no i586-gnu persona, so you can’t use “--system” here. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 21:30 ` Ricardo Wurmus @ 2019-08-30 21:52 ` Svante Signell 2019-08-30 22:17 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-30 21:52 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> 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? > So the binaries have a special role and usually don’t change. That’s > why the fact that my bootstrap binaries use GCC 5 is not a problem. > > > uname -a > > Linux gnu 5.1.2-gnu #1 SMP 1 x86_64 GNU/Linux > > guix build bootstrap-tarballs --system=i586-gnu > > guix build: error: could not find bootstrap binary 'tar' for system 'i586- > > gnu' > > You need to cross-build. x86_64 systems have no i586-gnu persona, so > you can’t use “--system” here. How is that cross-build done? Within the Linux guix image or a Linux amd64 image? And cross package build order? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 21:52 ` Svante Signell @ 2019-08-30 22:17 ` Ricardo Wurmus 2019-08-31 8:06 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-08-30 22:17 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote: >> Svante Signell <svante.signell@gmail.com> 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/…/. > 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. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 22:17 ` Ricardo Wurmus @ 2019-08-31 8:06 ` Svante Signell 2019-08-31 8:13 ` Julien Lepiller 2019-08-31 12:12 ` Ricardo Wurmus 0 siblings, 2 replies; 47+ messages in thread From: Svante Signell @ 2019-08-31 8:06 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > > On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote: > > > Svante Signell <svante.signell@gmail.com> 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 make[2]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-i586-pc-gnu- 5.5.0.drv-0/build/gcc' make[1]: *** [Makefile:4095: all-gcc] Error 2 make[1]: Leaving directory '/tmp/guix-build-gcc-cross-sans-libc-i586-pc-gnu- 5.5.0.drv-0/build' make: *** [Makefile:853: all] Error 2 Backtrace: 4 (primitive-load "/gnu/store/745pxg9235s6x3szcxim8xs03fp…") In ice-9/eval.scm: 191:35 3 (_ _) In srfi/srfi-1.scm: 863:16 2 (every1 #<procedure 761180 at /gnu/store/ihzxrhpzk15qv…> …) In /gnu/store/ihzxrhpzk15qvz4bjibymj9qniifnxdf-module-import/guix/build/gnu- build-system.scm: 799:28 1 (_ _) In /gnu/store/ihzxrhpzk15qvz4bjibymj9qniifnxdf-module- import/guix/build/utils.scm: 616:6 0 (invoke _ . _) ... which g++ /home/guest/.guix-profile/bin/g++ /home/guest/.guix-profile/bin/g++ --version g++ (GCC) 9.1.0 Copyright (C) 2019 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. What should be modified to build a newer version of gcc? Any ideas? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 8:06 ` Svante Signell @ 2019-08-31 8:13 ` Julien Lepiller 2019-08-31 9:24 ` Svante Signell 2019-08-31 12:12 ` Ricardo Wurmus 1 sibling, 1 reply; 47+ messages in thread From: Julien Lepiller @ 2019-08-31 8:13 UTC (permalink / raw) To: Svante Signell, Ricardo Wurmus; +Cc: guix-devel Le 31 août 2019 10:06:15 GMT+02:00, Svante Signell <svante.signell@gmail.com> a écrit : >On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote: >> Svante Signell <svante.signell@gmail.com> writes: >> >> > On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote: >> > > Svante Signell <svante.signell@gmail.com> 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 >make[2]: Leaving directory >'/tmp/guix-build-gcc-cross-sans-libc-i586-pc-gnu- >5.5.0.drv-0/build/gcc' >make[1]: *** [Makefile:4095: all-gcc] Error 2 >make[1]: Leaving directory >'/tmp/guix-build-gcc-cross-sans-libc-i586-pc-gnu- >5.5.0.drv-0/build' >make: *** [Makefile:853: all] Error 2 >Backtrace: > 4 (primitive-load "/gnu/store/745pxg9235s6x3szcxim8xs03fp…") >In ice-9/eval.scm: > 191:35 3 (_ _) >In srfi/srfi-1.scm: > 863:16 2 (every1 #<procedure 761180 at /gnu/store/ihzxrhpzk15qv…> …) >In >/gnu/store/ihzxrhpzk15qvz4bjibymj9qniifnxdf-module-import/guix/build/gnu- >build-system.scm: > 799:28 1 (_ _) >In /gnu/store/ihzxrhpzk15qvz4bjibymj9qniifnxdf-module- >import/guix/build/utils.scm: > 616:6 0 (invoke _ . _) >... > >which g++ >/home/guest/.guix-profile/bin/g++ > >/home/guest/.guix-profile/bin/g++ --version >g++ (GCC) 9.1.0 >Copyright (C) 2019 Free Software Foundation, Inc. >This is free software; see the source for copying conditions. There is >NO >warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR >PURPOSE. > >What should be modified to build a newer version of gcc? >Any ideas? The "Killed" message only happened to me when I ran out of RAM during a build. Maybe you need a more powerful machine? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 8:13 ` Julien Lepiller @ 2019-08-31 9:24 ` Svante Signell 2019-08-31 9:41 ` Julien Lepiller 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-31 9:24 UTC (permalink / raw) To: Julien Lepiller, Ricardo Wurmus; +Cc: guix-devel On Sat, 2019-08-31 at 10:13 +0200, Julien Lepiller wrote: > > On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote: > > > Svante Signell <svante.signell@gmail.com> writes: > > > > > > > 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 I installed the tarballs here. How to make guix aware of them? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 9:24 ` Svante Signell @ 2019-08-31 9:41 ` Julien Lepiller 0 siblings, 0 replies; 47+ messages in thread From: Julien Lepiller @ 2019-08-31 9:41 UTC (permalink / raw) To: Svante Signell, Ricardo Wurmus; +Cc: guix-devel Le 31 août 2019 11:24:18 GMT+02:00, Svante Signell <svante.signell@gmail.com> a écrit : >On Sat, 2019-08-31 at 10:13 +0200, Julien Lepiller wrote: >> > On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote: >> > > Svante Signell <svante.signell@gmail.com> writes: >> > > >> > > > 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 > >I installed the tarballs here. How to make guix aware of them? What Ricardo meant is that you should put the tarballs in gnu/packages/bootstrap, inside your git checkout on the hurd system (the one you built), not in the store or in a global system location. You must never modify the content of the store or you will break the model guix uses for package management. ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 8:06 ` Svante Signell 2019-08-31 8:13 ` Julien Lepiller @ 2019-08-31 12:12 ` Ricardo Wurmus 2019-08-31 17:27 ` Svante Signell 1 sibling, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-08-31 12:12 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Sat, 2019-08-31 at 00:17 +0200, Ricardo Wurmus wrote: >> Svante Signell <svante.signell@gmail.com> writes: >> >> > On Fri, 2019-08-30 at 23:30 +0200, Ricardo Wurmus wrote: >> > > Svante Signell <svante.signell@gmail.com> 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 ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 12:12 ` Ricardo Wurmus @ 2019-08-31 17:27 ` Svante Signell 2019-09-01 9:11 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-08-31 17:27 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sat, 2019-08-31 at 14:12 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > > > > 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. OK, thanks. I have now installed the bootstrap binaries in the guix installed directory. Issuing guix build hello --keep-failed gives plenty of output, too much for the terminal buffer. It ends with: guix build: warning: failed to load '(gnu packages bootstrap i586-pc-gnu share guile #{2.2}# web uri)': no code for module (gnu packages bootstrap i586-pc-gnu share guile #{2.2}# web uri) guix build: warning: failed to load '(gnu packages clojure)': Not a vlist: Error while printing exception. Backtrace: In ice-9/boot-9.scm: 829:9 19 (catch _ _ #<procedure 8b0040 at guix/ui.scm:703:2 (ke…> …) 829:9 18 (catch _ _ #<procedure 8b0050 at guix/ui.scm:826:6 (ke…> …) In guix/scripts/build.scm: 904:6 17 (_) In guix/status.scm: 768:4 16 (call-with-status-report _ _) In guix/store.scm: 623:10 15 (call-with-store _) madvise failed: Function not implemented In guix/scripts/build.scm: 911:26 14 (_ #<store-connection 256.99 55cbd0>) 826:9 13 (options->derivations #<store-connection 256.99 55cbd0> #) In srfi/srfi-1.scm: 679:15 12 (append-map _ _ . _) 592:29 11 (map1 _) 592:17 10 (map1 ((argument . "hello") (build-mode . 0) (# . #t) …)) In guix/scripts/build.scm: 792:30 9 (_ _) In gnu/packages.scm: 477:2 8 (%find-package "hello" "hello" #f) 383:6 7 (find-best-packages-by-name _ _) 313:55 6 (_ "hello" _) In unknown file: madvise failed: Function not implemented 5 (force #<promise #<procedure 48bdcd0 at gnu/packages.sc…>) In guix/discovery.scm: 179:3 4 (fold-module-public-variables _ _ _) In guix/combinators.scm: 45:26 3 (fold2 #<procedure 15b8ab50 at guix/discovery.scm:179:…> …) 45:26 2 (fold2 #<procedure 15b8ab40 at guix/discovery.scm:180:…> …) In guix/discovery.scm: 182:33 1 (_ #<package zile-on-guile@2.4.14-0.fd09781 gnu/packag…> …) In ice-9/eval.scm: 619:8 0 (_ #(#(#<directory (ice-9 vlist) 839190>) "zile-on-g…" …)) ice-9/eval.scm:619:8: Not a vlist: Error while printing exception. Some deprecated features have been used. Set the environment variable GUILE_WARN_DEPRECATED to "detailed" and rerun the program to get more information. Set it to "no" to suppress this message. Where do I find the build log, and where is the failed build directory? Looking at /usr/share/guile/site/2.2/gnu/packages/bootstrap/i586-pc-gnu one finds all the above files e.g.: /usr/share/guile/site/2.2/gnu/packages/bootstrap/i586-pc- gnu/share/guile/2.2/web/uri.scm /usr/share/guile/site/2.2/gnu/packages/bootstrap/i586-pc- gnu/share/guile/2.2/web/server.scm while the build shows otherwise... ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-31 17:27 ` Svante Signell @ 2019-09-01 9:11 ` Svante Signell 2019-09-01 9:32 ` Efraim Flashner 2019-09-01 13:28 ` Svante Signell 0 siblings, 2 replies; 47+ messages in thread From: Svante Signell @ 2019-09-01 9:11 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sat, 2019-08-31 at 19:27 +0200, Svante Signell wrote: I have some further guix/guile questions when building and running guix on GHU/Hurd natively On the GNU/Hurd image: download and unpack guix-1.0.1.tar.gz cd guix-1.0.1 1) When building guix from source ./configure --with-courage --prefix=/usr 2>&1 | tee ../configure-with- courage.log make 2>&1 | tee ../make.log ERROR: In procedure scm-error: no code for module (bytestructures guile) export GUILE_LOAD_PATH=~/DEBs/scheme-bytestructures/scheme-bytestructures The above fixes that error. a) How do I add that module and in which *.scm file? 2) Building Hello ./pre-inst-env guix build --verbosity=10000 --keep-failed --log-file hello 2>&1 | tee build-hello-keep+log.log a) Where do I find the build log, and where is the failed build directory? b) After building the bootstrap tarballs on my GNU/Linux guix image: ls /gnu/store/zb89702az7xx3c0y21ip6gsql5fxa8ws-bootstrap-tarballs-0 binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz gcc-stripped-5.5.0-i586-pc-gnu.tar.xz glibc-stripped-2.28-i586-pc-gnu.tar.xz guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz static-binaries-0-i586-pc-gnu.tar.xz and copying them to gnu/packages/bootstrap/i586-pc-gnu/ - Should they be as is *.xz or unpacked to *.tar or untarred? - The manual says: http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#index-bootstrap-binaries-1 How to make guix find these tarballs? http://guix.gnu.org/manual/en/html_node/Porting.html#Porting says: ... Fortunately, Guix can cross compile those bootstrap binaries. When everything goes well, and assuming the GNU tool chain supports the target platform, this can be as simple as running a command like this one: guix build --target=armv5tel-linux-gnueabi bootstrap-tarballs My change here: guix build --target=i586-pc-gnu --no-substitutes bootstrap-tarballs For this to work, the glibc-dynamic-linker procedure in (gnu packages bootstrap) must be augmented to return the right file name for libc’s dynamic linker on that platform; likewise, system->linux-architecture in (gnu packages linux) must be taught about the new platform. (should probably be changed to (gnu packages gnu) ??) Once these are built, the (gnu packages bootstrap) module needs to be updated to refer to these binaries on the target platform. To which *.scm file to add e.g. (gnu packages bootstrap)? Thanks! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-01 9:11 ` Svante Signell @ 2019-09-01 9:32 ` Efraim Flashner 2019-09-01 13:28 ` Svante Signell 1 sibling, 0 replies; 47+ messages in thread From: Efraim Flashner @ 2019-09-01 9:32 UTC (permalink / raw) To: Svante Signell; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 3947 bytes --] On Sun, Sep 01, 2019 at 11:11:56AM +0200, Svante Signell wrote: > On Sat, 2019-08-31 at 19:27 +0200, Svante Signell wrote: > > I have some further guix/guile questions when building and running guix on > GHU/Hurd natively > > On the GNU/Hurd image: > download and unpack guix-1.0.1.tar.gz > cd guix-1.0.1 > > 1) When building guix from source > ./configure --with-courage --prefix=/usr 2>&1 | tee ../configure-with- > courage.log > make 2>&1 | tee ../make.log > ERROR: In procedure scm-error: > no code for module (bytestructures guile) > export GUILE_LOAD_PATH=~/DEBs/scheme-bytestructures/scheme-bytestructures > The above fixes that error. > > a) How do I add that module and in which *.scm file? > > 2) Building Hello > > ./pre-inst-env guix build --verbosity=10000 --keep-failed --log-file hello 2>&1 > | tee build-hello-keep+log.log > > a) Where do I find the build log, and where is the failed build directory? > b) After building the bootstrap tarballs on my GNU/Linux guix image: > > ls /gnu/store/zb89702az7xx3c0y21ip6gsql5fxa8ws-bootstrap-tarballs-0 > binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz > gcc-stripped-5.5.0-i586-pc-gnu.tar.xz > glibc-stripped-2.28-i586-pc-gnu.tar.xz > guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz > static-binaries-0-i586-pc-gnu.tar.xz > > and copying them to gnu/packages/bootstrap/i586-pc-gnu/ > - Should they be as is *.xz or unpacked to *.tar or untarred? As they are, as *.xz looking at the gnu/packages/bootstrap/aarch64-linux-gnu/ folder, you'll need a couple of binaries from static-binaries (I think). Make sure they're executable. They might be from binutils, I don't remember. > - The manual says: > http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#index-bootstrap-binaries-1 > How to make guix find these tarballs? > > http://guix.gnu.org/manual/en/html_node/Porting.html#Porting > says: > ... > Fortunately, Guix can cross compile those bootstrap binaries. > When everything goes well, and assuming the GNU tool chain supports the > target platform, this can be as simple as running a command like this > one: > > guix build --target=armv5tel-linux-gnueabi bootstrap-tarballs > My change here: > guix build --target=i586-pc-gnu --no-substitutes bootstrap-tarballs > > For this to work, the glibc-dynamic-linker procedure in > (gnu packages bootstrap) must be augmented to return the right > file name for libc’s dynamic linker on that platform; likewise, > system->linux-architecture in (gnu packages linux) must be > taught about the new platform. > i586-pc-gnu is already listed in (gnu packages bootstrap), I would skip (gnu packages linux) for now, the relevant parts seem to be related to the linux kernel. > (should probably be changed to (gnu packages gnu) ??) > > Once these are built, the (gnu packages bootstrap) module needs > to be updated to refer to these binaries on the target platform. > > To which *.scm file to add e.g. (gnu packages bootstrap)? to (gnu packages bootstrap). The "correct" way to do it is to host it somewhere and modify %bootstrap-base-urls and the urls for bootstrap-*-url-path for each of the bootstrap binaries, in actuality, for testing, you can 'guix download file:///path/to/file' and just update the bootstrap-*-hash entries with one for your architecture (in this case, i586-pc). If you use 'guix download' to place them in the store then you don't need to worry about hosting them because they won't need to be downloaded. You'll also need to change some of the references to guile-2.0 to guile-2.2 in (gnu packages bootstrap) and possibly also in (gnu packages commencement). > > Thanks! > > -- Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 833 bytes --] ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-01 9:11 ` Svante Signell 2019-09-01 9:32 ` Efraim Flashner @ 2019-09-01 13:28 ` Svante Signell 2019-09-01 18:01 ` Svante Signell 1 sibling, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-01 13:28 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sun, 2019-09-01 at 11:11 +0200, Svante Signell wrote: > On Sat, 2019-08-31 at 19:27 +0200, Svante Signell wrote: > > I have some further guix/guile questions when building and running guix on > GHU/Hurd natively > > On the GNU/Hurd image: > download and unpack guix-1.0.1.tar.gz > cd guix-1.0.1 > > 1) When building guix from source > ./configure --with-courage --prefix=/usr 2>&1 | tee ../configure-with- > courage.log > make 2>&1 | tee ../make.log > ERROR: In procedure scm-error: > no code for module (bytestructures guile) > export GUILE_LOAD_PATH=~/DEBs/scheme-bytestructures/scheme-bytestructures > The above fixes that error. > > a) How do I add that module and in which *.scm file? > > 2) Building Hello > > ./pre-inst-env guix build --verbosity=10000 --keep-failed --log-file hello > 2>&1 > > tee build-hello-keep+log.log > > a) Where do I find the build log, and where is the failed build directory? > b) After building the bootstrap tarballs on my GNU/Linux guix image: > > ls /gnu/store/zb89702az7xx3c0y21ip6gsql5fxa8ws-bootstrap-tarballs-0 > binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz > gcc-stripped-5.5.0-i586-pc-gnu.tar.xz > glibc-stripped-2.28-i586-pc-gnu.tar.xz > guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz > static-binaries-0-i586-pc-gnu.tar.xz > > and copying them to gnu/packages/bootstrap/i586-pc-gnu/ > - Should they be as is *.xz or unpacked to *.tar or untarred? > - The manual says: > http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#index-bootstrap-binaries-1 > How to make guix find these tarballs? > > http://guix.gnu.org/manual/en/html_node/Porting.html#Porting > says: > ... > Fortunately, Guix can cross compile those bootstrap binaries. > When everything goes well, and assuming the GNU tool chain supports the > target platform, this can be as simple as running a command like this > one: > > guix build --target=armv5tel-linux-gnueabi bootstrap-tarballs > My change here: > guix build --target=i586-pc-gnu --no-substitutes bootstrap-tarballs > > For this to work, the glibc-dynamic-linker procedure in > (gnu packages bootstrap) must be augmented to return the right > file name for libc’s dynamic linker on that platform; likewise, > system->linux-architecture in (gnu packages linux) must be > taught about the new platform. > > (should probably be changed to (gnu packages gnu) ??) > > Once these are built, the (gnu packages bootstrap) module needs > to be updated to refer to these binaries on the target platform. > > To which *.scm file to add e.g. (gnu packages bootstrap)? > > Thanks! And btw: info guix speaks Spanish as default :( Must be a bug! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-01 13:28 ` Svante Signell @ 2019-09-01 18:01 ` Svante Signell 2019-09-03 12:07 ` Status update+patches:Re: " Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-01 18:01 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sun, 2019-09-01 at 15:28 +0200, Svante Signell wrote: > On Sun, 2019-09-01 at 11:11 +0200, Svante Signell wrote: > And btw: info guix speaks Spanish as default :( Must be a bug! I've come a little further: Extracting the files from the cross-built files "bash mkdir tar xz" from static- binaries-0-i586-pc-gnu.tar to the build directory .../guix-1.0.1/gnu/packages/bootstrap/i586-gnu and issuing guix package --bootstrap 2>&1 | tee ../bootstrap.log I found out the the file gnu/packages/bootstrap.scm has to be modified. Backtrace: 13 (apply-smob/1 #<catch-closure 552110>) In ice-9/boot-9.scm: 705:2 12 (call-with-prompt _ _ #<procedure default-prompt-handle…>) In ice-9/eval.scm: 619:8 11 (_ #(#(#<directory (guile-user) 645910>))) In guix/ui.scm: 1747:12 10 (run-guix-command _ . _) In ice-9/boot-9.scm: 829:9 9 (catch srfi-34 #<procedure 48aa900 at guix/ui.scm:703:…> …) 829:9 8 (catch system-error #<procedure 48aa950 at guix/script…> …) In guix/scripts/package.scm: 915:10 7 (_) In guix/status.scm: 768:4 6 (call-with-status-report _ _) In guix/scripts/package.scm: 918:28 5 (_) In guix/packages.scm: 936:16 4 (cache! #<weak-table 0/113> #<package guile-bootstrap@…> …) 1255:22 3 (thunk) In gnu/packages/bootstrap.scm: 263:16 2 (raw-build #<store-connection 256.99 4edba0> "guile-bo…" …) 246:30 1 (download-bootstrap-guile #<store-connection 256.99 4e…> …) 220:2 0 (bootstrap-guile-hash _) gnu/packages/bootstrap.scm:220:2: In procedure bootstrap-guile-hash: Throw to key `match-error' with args `("match" "no matching pattern" "i586- gnu")'. Looking at line 220 one finds: (define (bootstrap-guile-hash system) "Return the SHA256 hash of the Guile bootstrap tarball for SYSTEM." (match system ("x86_64-linux" (base32 "1w2p5zyrglzzniqgvyn1b55vprfzhgk8vzbzkkbdgl5248si0yq3")) How do I create the hash for i586-gnu? guix hash --help shows that I need a file to create the hash for: Usage: guix hash [OPTION] FILE Return the cryptographic hash of FILE. Which FILE to enter here, the cross-built guile-static-stripped-2.2.4-i586-pc- gnu.tar.xz? Additionally before line 220 in that file (define %bootstrap-base-urls ;; This is where the initial binaries come from. anddefine (bootstrap-guile-url-path system) "Return the URI for FILE." How to give an entry for the locally built .xz-files? Thanks! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-01 18:01 ` Svante Signell @ 2019-09-03 12:07 ` Svante Signell 2019-09-03 12:58 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-03 12:07 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 3351 bytes --] On Sun, 2019-09-01 at 20:01 +0200, Svante Signell wrote: ... I think it is time to wrap up a little now on the Hurd port. Attached are patches I made. Save for some indentation misses. gnu_local.mk.diff guix_scripts_perform-download.scm.diff gnu_packages_bootstrap.scm.diff nix_libstore_build.cc.diff guix_build_syscalls.scm.diff guix_scripts_perform-download.scm.diff and nix_libstore_build.cc.diff are temporary fixes enable to downloads as root. guix_build_syscalls.scm.diff should be made conditional on (set-thread-name name) for Linux and non-Linux. Don't know too much scheme coding yet. gnu_local.mk.diff and gnu_package_bootstrap.scm.diff are essentially the same as Ricardo Wurmus made. I used my cross-built files though: binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz gcc-stripped-5.5.0-i586-pc-gnu.tar.xz glibc-stripped-2.28-i586-pc-gnu.tar.xz guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz static-binaries-0-i586-pc-gnu.tar.xz The guix-daemon was started by: ./pre-inst-env ./guix-daemon --debug --disable-chroot --no-substitutes Found out that the built static xz binary was erroring out: Error creating a pipe: Function not implemented so I replaced it with the native dynamically built xz, both at gnu/packages/bootstrap/i586-gnu and in static-binaries-0-i586-pc-gnu.tar.xz. That made ./pre-inst-env guix build -S hello work. Then I continued with as Richardo wrote: ./pre-inst-env guix build -e '(@@ (gnu packages commencement) gnu-make-boot0))' 2>&1 | tee ../pre-inst-env_guix-build-e-no-chroot_new-hash.log The build went a lot further, but failed here: successfully built /gnu/store/6sybpxd8hy07h4fqf4wyblxrsi17r4zn-gcc-bootstrap- 0.drv building /gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv... builder for `/gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv' failed with exit code 1 build of /gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv failed View build log at '/usr/var/log/guix/drvs/h0/y1izzm1nxr3gqwagg84dnssa723sby- make-4.2.1.tar.xz.drv.gz'. cannot build derivation `/gnu/store/j18911vbapx9kx0gqcyn6nkd3bwz52lj-make-boot0- 4.2.1.drv': 1 dependencies couldn't be built guix build: error: build of `/gnu/store/j18911vbapx9kx0gqcyn6nkd3bwz52lj-make- boot0-4.2.1.drv' failed Unfortunately the build log is empty. I also replaced tar at gnu/packages/bootstrap/i586-gnu and in static-binaries-0- i586-pc-gnu.tar.xz but did not get any further. The cross-built xz is definitely buggy, I don't know about the other files at: gnu/packages/bootstrap/i586-gnu: bash mkdir tar xz Maybe there are other buggy cross-built binaries. A question: The gcc used is very old: 5.5.0, is i possible that guix could upgrade to a newer version, preferrably later than gcc-7. Additionally, it would maybe better to create static binaries built natively on GNU/Hurd instead of using cross-building? I also tried to build the cross-files natively but failed: ./pre-inst-env guix build --no-grafts --target=i586-pc-gnu -e '(@@ (gnu packages make-bootstrap) %static-inputs)' 2>&1 | tee ../rebuild-static-cross-files.log guix build: error: ("tar" #<package tar@1.30 guix/build-system/gnu.scm:169 114fb790>): not something we can build Is it possible to modify gnu/packages/make-bootstrap.scm to make this succeed? Thanks everybody on #guix for your help. [-- Attachment #2: gnu_local.mk.diff --] [-- Type: text/x-patch, Size: 907 bytes --] --- a/gnu/local.mk.orig 2019-05-15 15:43:04.000000000 +0200 +++ b/gnu/local.mk 2019-09-01 21:40:56.000000000 +0200 @@ -1383,6 +1383,7 @@ bootstrap_armhf_linuxdir = $(bootstrapdir)/armhf-linux bootstrap_aarch64_linuxdir = $(bootstrapdir)/aarch64-linux bootstrap_mips64el_linuxdir = $(bootstrapdir)/mips64el-linux +bootstrap_i586_gnudir = $(bootstrapdir)/i586-gnu dist_bootstrap_x86_64_linux_DATA = \ %D%/packages/bootstrap/x86_64-linux/bash \ @@ -1414,6 +1415,12 @@ %D%/packages/bootstrap/mips64el-linux/tar \ %D%/packages/bootstrap/mips64el-linux/xz ++dist_bootstrap_i586_gnu_DATA = \ + %D%/packages/bootstrap/i586-gnu/bash \ + %D%/packages/bootstrap/i586-gnu/mkdir \ + %D%/packages/bootstrap/i586-gnu/tar \ + %D%/packages/bootstrap/i586-gnu/xz + # Those files must remain executable, so they remain executable once # imported into the store. set-bootstrap-executable-permissions: [-- Attachment #3: gnu_packages_bootstrap.scm.diff --] [-- Type: text/x-patch, Size: 5704 bytes --] --- a/gnu/packages/bootstrap.scm.orig 2019-05-03 14:25:14.000000000 +0200 +++ b/gnu/packages/bootstrap.scm 2019-09-03 12:07:06.000000000 +0200 @@ -202,6 +202,8 @@ "http://alpha.gnu.org/gnu/guix/bootstrap" "ftp://alpha.gnu.org/gnu/guix/bootstrap" "http://www.fdn.fr/~lcourtes/software/guix/packages" + "http://berlin.guix.gnu.org/guix/bootstrap" + "http://178.78.231.178/Guix/bootstrap-tarballs" "http://flashner.co.il/guix/bootstrap")) (define (bootstrap-guile-url-path system) @@ -212,6 +214,8 @@ "/20170217/guile-2.0.14.tar.xz") ("armhf-linux" "/20150101/guile-2.0.11.tar.xz") + ("i586-gnu" + "/20190901/guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz") (_ "/20131110/guile-2.0.9.tar.xz")))) @@ -227,7 +231,9 @@ ("armhf-linux" (base32 "1mi3brl7l58aww34rawhvja84xc7l1b4hmwdmc36fp9q9mfx0lg5")) ("aarch64-linux" - (base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r")))) + (base32 "1giy2aprjmn5fp9c4s9r125fljw4wv6ixy5739i5bffw4jgr0f9r")) + ("i586-gnu" + (base32 "1lvzcjkk22dykgylcbwfxb8ajlq7ik1vqgs4gv0xspqcr94dmbkf")))) (define (bootstrap-guile-origin system) "Return an <origin> object for the Guile tarball of SYSTEM." @@ -356,6 +362,8 @@ "/20150101/static-binaries.tar.xz") ("aarch64-linux" "/20170217/static-binaries.tar.xz") + ("i586-gnu" + "/20190901/static-binaries-0-i586-pc-gnu.tar.xz") (_ "/20131110/static-binaries.tar.xz"))) %bootstrap-base-urls)) @@ -373,6 +381,9 @@ ("aarch64-linux" (base32 "18dfiq6c6xhsdpbidigw6480wh0vdgsxqq3xindq4lpdgqlccpfh")) + ("i586-gnu" + (base32 + "14grnv1f7g3c49j1rxzln3nv3902c4k081fgf3a4bpvn0x12sdgd")) ("mips64el-linux" (base32 "072y4wyfsj1bs80r6vbybbafy8ya4vfy7qj25dklwk97m6g71753")))))) @@ -403,6 +414,8 @@ "/20150101/binutils-2.25.tar.xz") ("aarch64-linux" "/20170217/binutils-2.27.tar.xz") + ("i586-gnu" + "/20190901/binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz") (_ "/20131110/binutils-2.23.2.tar.xz"))) %bootstrap-base-urls)) @@ -420,6 +433,9 @@ ("aarch64-linux" (base32 "111s7ilfiby033rczc71797xrmaa3qlv179wdvsaq132pd51xv3n")) + ("i586-gnu" + (base32 + "0yd35w9j6pm3y6qwwsa3vdxki50kzy9zylbsbyr98109w6fshpz6")) ("mips64el-linux" (base32 "1x8kkhcxmfyzg1ddpz2pxs6fbdl6412r7x0nzbmi5n7mj8zw2gy7")))))) @@ -471,6 +487,8 @@ "/20150101/glibc-2.20.tar.xz") ("aarch64-linux" "/20170217/glibc-2.25.tar.xz") + ("i586-gnu" + "/20190901/glibc-stripped-2.28-i586-pc-gnu.tar.xz") (_ "/20131110/glibc-2.18.tar.xz"))) %bootstrap-base-urls)) @@ -488,6 +506,9 @@ ("aarch64-linux" (base32 "07nx3x8598i2924rjnlrncg6rm61c9bmcczbbcpbx0fb742nvv5c")) + ("i586-gnu" + (base32 + "0qy2pib5j78lg08756smbgq3qxqrx3b6kf68j59fd0dlby7dwk63")) ("mips64el-linux" (base32 "0k97a3whzx3apsi9n2cbsrr79ad6lh00klxph9hw4fqyp1abkdsg"))))))))) @@ -555,6 +576,8 @@ "/20150101/gcc-4.8.4.tar.xz") ("aarch64-linux" "/20170217/gcc-5.4.0.tar.xz") + ("i586-gnu" + "/20190901/gcc-stripped-5.5.0-i586-pc-gnu.tar.xz") (_ "/20131110/gcc-4.8.2.tar.xz"))) %bootstrap-base-urls)) @@ -572,6 +595,9 @@ ("aarch64-linux" (base32 "1ar3vdzyqbfm0z36kmvazvfswxhcihlacl2dzdjgiq25cqnq9ih1")) + ("i586-gnu" + (base32 + "14yqm084l71ry381ir7cvaz56w68yasb87nx4j0np36hmwgvlzhl")) ("mips64el-linux" (base32 "1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks"))))))))) [-- Attachment #4: guix_scripts_perform-download.scm.diff --] [-- Type: text/x-patch, Size: 1340 bytes --] --- a/guix/scripts/perform-download.scm.orig 2019-05-03 14:25:15.000000000 +0200 +++ b/guix/scripts/perform-download.scm 2019-09-02 17:59:19.000000000 +0200 @@ -86,10 +86,10 @@ (when (and executable (string=? executable "1")) (chmod output #o755)))))) -(define (assert-low-privileges) - (when (zero? (getuid)) - (leave (G_ "refusing to run with elevated privileges (UID ~a)~%") - (getuid)))) +;;(define (assert-low-privileges) +;; (when (zero? (getuid)) +;; (leave (G_ "refusing to run with elevated privileges (UID ~a)~%") +;; (getuid)))) (define (guix-perform-download . args) "Perform the download described by the given fixed-output derivation. @@ -112,12 +112,12 @@ (with-error-handling (match args (((? derivation-path? drv) (? store-path? output)) - (assert-low-privileges) +;; (assert-low-privileges) (perform-download (read-derivation-from-file drv) output #:print-build-trace? print-build-trace?)) (((? derivation-path? drv)) ;backward compatibility - (assert-low-privileges) +;; (assert-low-privileges) (perform-download (read-derivation-from-file drv) #:print-build-trace? print-build-trace?)) (("--version") [-- Attachment #5: nix_libstore_build.cc.diff --] [-- Type: text/x-patch, Size: 643 bytes --] --- a/nix/libstore/build.cc.orig 2019-05-03 14:25:15.000000000 +0200 +++ b/nix/libstore/build.cc 2019-09-02 17:53:29.000000000 +0200 @@ -492,7 +492,7 @@ void UserLock::acquire() { - assert(uid == 0); + // assert(uid == 0); assert(settings.buildUsersGroup != ""); @@ -571,9 +571,9 @@ void UserLock::release() { - if (uid == 0) return; + // if (uid == 0) return; fdUserLock.close(); /* releases lock */ - assert(lockedPaths.find(fnUserLock) != lockedPaths.end()); + // assert(lockedPaths.find(fnUserLock) != lockedPaths.end()); lockedPaths.erase(fnUserLock); fnUserLock = ""; uid = 0; [-- Attachment #6: guix_build_syscalls.scm.diff --] [-- Type: text/x-patch, Size: 1271 bytes --] --- a/guix/build/syscalls.scm.orig 2019-05-15 15:43:04.000000000 +0200 +++ b/guix/build/syscalls.scm 2019-09-03 13:45:36.000000000 +0200 @@ -1086,18 +1086,19 @@ ;; zero. 16) -(define (set-thread-name name) - "Set the name of the calling thread to NAME. NAME is truncated to 15 -bytes." - (let ((ptr (string->pointer name))) - (let-values (((ret err) - (%prctl PR_SET_NAME - (pointer-address ptr) 0 0 0))) - (unless (zero? ret) - (throw 'set-process-name "set-process-name" - "set-process-name: ~A" - (list (strerror err)) - (list err)))))) +(define (set-thread-name name) #t) +;; (define (set-thread-name name) +;; "Set the name of the calling thread to NAME. NAME is truncated to 15 +;; bytes." +;; (let ((ptr (string->pointer name))) +;; (let-values (((ret err) +;; (%prctl PR_SET_NAME +;; (pointer-address ptr) 0 0 0))) +;; (unless (zero? ret) +;; (throw 'set-process-name "set-process-name" +;; "set-process-name: ~A" +;; (list (strerror err)) +;; (list err)))))) (define (thread-name) "Return the name of the calling thread as a string." ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 12:07 ` Status update+patches:Re: " Svante Signell @ 2019-09-03 12:58 ` Ricardo Wurmus 2019-09-03 13:56 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-03 12:58 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Hi Svante, > Then I continued with as Richardo wrote: > ./pre-inst-env guix build -e '(@@ (gnu packages commencement) gnu-make-boot0))' > 2>&1 | tee ../pre-inst-env_guix-build-e-no-chroot_new-hash.log > The build went a lot further, but failed here: > > successfully built /gnu/store/6sybpxd8hy07h4fqf4wyblxrsi17r4zn-gcc-bootstrap- > 0.drv > building /gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv... > builder for `/gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv' > failed with exit code 1 > build of /gnu/store/h0y1izzm1nxr3gqwagg84dnssa723sby-make-4.2.1.tar.xz.drv > failed > View build log at '/usr/var/log/guix/drvs/h0/y1izzm1nxr3gqwagg84dnssa723sby- > make-4.2.1.tar.xz.drv.gz'. > cannot build derivation `/gnu/store/j18911vbapx9kx0gqcyn6nkd3bwz52lj-make-boot0- > 4.2.1.drv': 1 dependencies couldn't be built > guix build: error: build of `/gnu/store/j18911vbapx9kx0gqcyn6nkd3bwz52lj-make- > boot0-4.2.1.drv' failed This looks very much like the tar segfault I encountered when I last played with the Hurd port. My notes say this: --8<---------------cut here---------------start------------->8--- - tar fails to run when building gnu-make-boot0 ./pre-inst-env guix build -e '(@@ (gnu packages commencement) gnu-make-boot0))' here’s the error: building /gnu/store/ybi3cyxqwm55gvwn9i1nczg2ns5ha34q-make-4.2.1.tar.xz.drv... /hurd/crash: /gnu/store/dqlhjyvg0n8v1kdvwfpliqy46n7kpjqb-bootstrap-binaries-0/bin/tar cvfa /gnu/store/p278mqb3aa0xrkrrw4rg1fxbb19hbdyh-make-4.2.1.tar.xz --mtime=@0 --owner=root --group=root --sort=name make-4.2.1(2316) crashed, signal {no:1 1, code:8176, error:2}, exception {1, code:2, subcode:8176}, PCs: {0x8089ce7, 0x 815091c}, writing core file. This works: /gnu/store/dqlhjyvg0n8v1kdvwfpliqy46n7kpjqb-bootstrap-binaries-0/bin/tar cvfa hello.tar.xz /tmp But it segfaults with “--mtime=@0” --8<---------------cut here---------------end--------------->8--- > The cross-built xz is definitely buggy, I don't know about the other files at: > gnu/packages/bootstrap/i586-gnu: bash mkdir tar xz > > Maybe there are other buggy cross-built binaries. Quite likely! > A question: The gcc used is very old: 5.5.0, is i possible that guix could > upgrade to a newer version, preferrably later than gcc-7. How would that help? Or is it just a guess that a later GCC would be better here? On the “core-updates” branch we are using a later GCC already. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 12:58 ` Ricardo Wurmus @ 2019-09-03 13:56 ` Svante Signell 2019-09-03 14:34 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-03 13:56 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Tue, 2019-09-03 at 14:58 +0200, Ricardo Wurmus wrote: > Hi Svante, > > This looks very much like the tar segfault I encountered when I last > played with the Hurd port. > > My notes say this: > > --8<---------------cut here---------------start------------->8--- > - tar fails to run when building gnu-make-boot0 > ./pre-inst-env guix build -e '(@@ (gnu packages commencement) gnu-make- > boot0))' > here’s the error: > building /gnu/store/ybi3cyxqwm55gvwn9i1nczg2ns5ha34q-make- > 4.2.1.tar.xz.drv... > /hurd/crash: /gnu/store/dqlhjyvg0n8v1kdvwfpliqy46n7kpjqb-bootstrap-binaries- > 0/bin/tar cvfa /gnu/store/p278mqb3aa0xrkrrw4rg1fxbb19hbdyh-make-4.2.1.tar.xz > --mtime=@0 --owner=root --group=root --sort=name make-4.2.1(2316) crashed, > signal {no:1 1, code:8176, error:2}, exception {1, code:2, subcode:8176}, PCs: > {0x8089ce7, 0x 815091c}, writing core file. > > > This works: > /gnu/store/dqlhjyvg0n8v1kdvwfpliqy46n7kpjqb-bootstrap-binaries-0/bin/tar cvfa > hello.tar.xz /tmp > > But it segfaults with “--mtime=@0” I did not look at the console, but found out similar crashes there. How did you get the output to the client terminal instead of the qemu console (not possible to cut and paste from that)? I have now tested both the statically built tar, the native tar downloaded by guix and the native tar: No errors now. How can I rebuild from scratch to watch the output on the console? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 13:56 ` Svante Signell @ 2019-09-03 14:34 ` Svante Signell 2019-09-03 21:13 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-03 14:34 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Tue, 2019-09-03 at 15:56 +0200, Svante Signell wrote: > I did not look at the console, but found out similar crashes there. How did > you get the output to the client terminal instead of the qemu console (not > possible to cut and paste from that)? I have now tested both the statically > built tar, the native tar downloaded by guix and the native tar: No errors > now. > How can I rebuild from scratch to watch the output on the console? > This time bash crashed... Took a screen shot of the qemu console. I have to replace all four: bash mkdir tar xz and put them into the .xz file too. ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 14:34 ` Svante Signell @ 2019-09-03 21:13 ` Svante Signell 2019-09-03 21:26 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-03 21:13 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Tue, 2019-09-03 at 16:34 +0200, Svante Signell wrote: > > > How can I rebuild from scratch to watch the output on the console? Seems to be to wipe out /gnu/store and /var/{guix,log} > This time bash crashed... Took a screen shot of the qemu console. I have to > replace all four: bash mkdir tar xz and put them into the .xz file too. I have now replaced bin/guile in guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz, but guile or tar still crashes. However I came a little further this time though: successfully built /gnu/store/3aqdqcnz63nnlwk61wimkcrdpbilwpvp-glibc-bootstrap- 0.drv building /gnu/store/sp2zksrcpvph48j9d93i902y098hpai4-make-4.2.1.tar.xz.drv... /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: 1: /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: Syntax error: ";" unexpected /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: 1: /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: Syntax error: ";" unexpected Backtrace: 2 (primitive-load "/gnu/store/qhyjwkwjriipqrc5av2j2ng6cgh?") In ice-9/eval.scm: 619:8 1 (_ #f) In guix/build/utils.scm: 616:6 0 (invoke _ . _) guix/build/utils.scm:616:6: In procedure invoke: Throw to key `srfi-34' with args `(#<condition &invoke-error [program: "/gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar" arguments: ("xvf" "/gnu/store/cq2prw9x259px05hsfvyivjfv9ibd1s7-make- 4.2.1.tar.bz2") exit-status: 2 term-signal: #f stop-signal: #f] 961fe0>)'. builder for `/gnu/store/sp2zksrcpvph48j9d93i902y098hpai4-make-4.2.1.tar.xz.drv' failed with exit code 1 build of /gnu/store/sp2zksrcpvph48j9d93i902y098hpai4-make-4.2.1.tar.xz.drv failed View build log at '/usr/var/log/guix/drvs/sp/2zksrcpvph48j9d93i902y098hpai4- make-4.2.1.tar.xz.drv.gz'. cannot build derivation `/gnu/store/zjhkkvvlqiidl0albl0hcsd7c5pmfazs-make-boot0- 4.2.1.drv': 1 dependencies couldn't be built guix build: error: build of `/gnu/store/zjhkkvvlqiidl0albl0hcsd7c5pmfazs-make- boot0-4.2.1.drv' failed The main problem seem to be the cross-built binaries. Would it be possible to build these static binaries natively, maybe even using guix or in som other way?? I have cross-built binutils, gcc, glibc, etc some (long) time ago when porting gnat to GNU/Hurd. Maybe it is time to find those notes again (if they did not disappear in the previous hard-disk crashes, no backup was used). All for now, time to do something else. BBL. Thanks! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 21:13 ` Svante Signell @ 2019-09-03 21:26 ` Ricardo Wurmus 2019-09-03 21:46 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-03 21:26 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Tue, 2019-09-03 at 16:34 +0200, Svante Signell wrote: >> >> > How can I rebuild from scratch to watch the output on the console? > > Seems to be to wipe out /gnu/store and /var/{guix,log} > >> This time bash crashed... Took a screen shot of the qemu console. I have to >> replace all four: bash mkdir tar xz and put them into the .xz file too. > > I have now replaced bin/guile in guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz, > but guile or tar still crashes. However I came a little further this time > though: > successfully built /gnu/store/3aqdqcnz63nnlwk61wimkcrdpbilwpvp-glibc-bootstrap- > 0.drv > building /gnu/store/sp2zksrcpvph48j9d93i902y098hpai4-make-4.2.1.tar.xz.drv... > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: 1: > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: Syntax > error: ";" unexpected > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: 1: > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: Syntax > error: ";" unexpected What are the contents of /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar? > The main problem seem to be the cross-built binaries. Would it be possible to > build these static binaries natively, maybe even using guix or in som other > way?? We should figure out what’s wrong with them and then adjust the way these binaries are built. It would not be useful to take binaries from elsewhere because we want to be able to reproduce the build automatically. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 21:26 ` Ricardo Wurmus @ 2019-09-03 21:46 ` Svante Signell 2019-09-03 22:01 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-03 21:46 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Tue, 2019-09-03 at 23:26 +0200, Ricardo Wurmus wrote: > > What are the contents of /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3- > bootstrap-binaries-0/bin/tar? Something strange: # ls -l /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries- 0/bin/tar -r-xr-xr-x 2 root root 445560 Jan 1 1970 /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar # file /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=6664753ff93e3b42aa8681d7fe0f7f9e5259c54f, stripped # ldd /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar not a dynamic executable # /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar -bash: /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: cannot execute binary file: Exec format error > > The main problem seem to be the cross-built binaries. Would it be possible > > to build these static binaries natively, maybe even using guix or in som > > other way?? > > We should figure out what’s wrong with them and then adjust the way > these binaries are built. It would not be useful to take binaries from > elsewhere because we want to be able to reproduce the build automatically. Again, can we build them natively on Hurd for testing purposes, either using native guix or not or cross-compiling from Linux with or without guix? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 21:46 ` Svante Signell @ 2019-09-03 22:01 ` Ricardo Wurmus 2019-09-04 4:31 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-03 22:01 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Tue, 2019-09-03 at 23:26 +0200, Ricardo Wurmus wrote: >> >> What are the contents of /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3- >> bootstrap-binaries-0/bin/tar? > > Something strange: > > # ls -l /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries- > 0/bin/tar > -r-xr-xr-x 2 root root 445560 Jan 1 1970 > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar > > # file /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar > /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: ELF > 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, > interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, Did you copy this from Debian and moved it into the store? That’s a very bad idea. > BuildID[sha1]=6664753ff93e3b42aa8681d7fe0f7f9e5259c54f, stripped > > # ldd /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar > not a dynamic executable > > # /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar > -bash: /gnu/store/alzim8hg6zqvs9s33frh7m9z211lryk3-bootstrap-binaries-0/bin/tar: > cannot execute binary file: Exec format error Does /lib64/ld-linux-x86-64.so.2 exist on the system? On the Guix system this does not exist. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-03 22:01 ` Ricardo Wurmus @ 2019-09-04 4:31 ` Svante Signell 2019-09-04 6:25 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-04 4:31 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Wed, 2019-09-04 at 00:01 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > Did you copy this from Debian and moved it into the store? That’s a > very bad idea. Sorry, my fault. I was tired and worked on different boxes and Linux+Hurd VMs. The status is now that ...: Starting download of /gnu/store/cq2prw9x259px05hsfvyivjfv9ibd1s7-make- 4.2.1.tar.bz2 From ftp://ftp.funet.fi/pub/mirrors/ftp.gnu.org/gnu/make/make-4.2.1.tar.bz2... cessfully built /gnu/store/j3525cllgl53qhkk5k9qkvx49qhba15g-make- 4.2.1.tar.bz2.drv building /gnu/store/kpwda0jcslkx16hm91ab1kr9kqg6lpg8-guile-bootstrap-2.0.drv... unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m-guile- bootstrap-2.0'... ./ ./bin/ ./bin/guile ... ./share/guile/2.2/web/server.scm./share/guile/2.2/web/uri.scm <crash output on the console> Uncaught exception: Cannot exit gracefully when init is in progress; aborting. /gnu/store/f2zsfb7ywkjmv7rzbnrzxi68hrcijnsf-build-bootstrap-guile.sh: line 8: 13527 Aborted (core dumped) GUILE_SYSTEM_PATH=$out/share/guile/2.0 GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache $out/bin/guile -c "(begin (use-modules (ice-9 match)) (match (command-line) ((_ out bash) (let ((bin-dir (string-append out \"/bin\")) (guile (string-append out \"/bin/guile\")) (guile- real (string-append out \"/bin/.guile-real\")) (dollar (string (integer->char 36)))) (chmod bin-dir 493) (rename-file guile guile-real) (call-with-output-file guile (lambda (p) (format p \"#!~a\\nexport GUILE_SYSTEM_PATH=~a/share/guile/2.0\\nexport GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache\\nexec -a \\\"~a0\\\" ~a \\\"~a@\\\"\\n\" bash out out dollar guile-real dollar))) (chmod guile 365) (chmod bin-dir 365)))))" $out /gnu/store/l79x4bhi7gw87xq0dwjia55qvdr0d4lz-bash successfully built /gnu/store/kpwda0jcslkx16hm91ab1kr9kqg6lpg8-guile-bootstrap- 2.0.drv building /gnu/store/fkqrljhpfw57hvcjg4gy6cisw45vw5r3-static-binaries-0-i586-pc- gnu.tar.xz.drv... Starting download of /gnu/store/abq8fgbsnfrjd0l5ywcnb12k4grynpcc-static- binaries-0-i586-pc-gnu.tar.xz ... successfully built /gnu/store/kpwda0jcslkx16hm91ab1kr9kqg6lpg8-guile-bootstrap- 2.0.drv building /gnu/store/fkqrljhpfw57hvcjg4gy6cisw45vw5r3-static-binaries-0-i586-pc- gnu.tar.xz.drv...... successfully built /gnu/store/1cfnynxfjp5axj9s83hcak8azc84lzfx-module-import- compiled.drv building /gnu/store/2pyyqi3hpvwxhdwy0wjnrgnirzbslh1k-binutils-bootstrap-0.drv... successfully built /gnu/store/2pyyqi3hpvwxhdwy0wjnrgnirzbslh1k-binutils- bootstrap-0.drv building /gnu/store/5pddkdbhw27pgaq406js2c5m0wix6z6h-bootstrap-binaries-0.drv... builder for `/gnu/store/5pddkdbhw27pgaq406js2c5m0wix6z6h-bootstrap-binaries- 0.drv' failed with exit code 1 build of /gnu/store/5pddkdbhw27pgaq406js2c5m0wix6z6h-bootstrap-binaries-0.drv failedView build log at '/usr/var/log/guix/drvs/5p/ddkdbhw27pgaq406js2c5m0wix6z6h-bootstrap-binaries- 0.drv.gz'. cannot build derivation `/gnu/store/9w8x804cgfm0j6h41k5z6lhyzfwcdzhv-make-boot0- 4.2.1.drv': 1 dependencies couldn't be built killing process 13522: Invalid argument guix build: error: build of `/gnu/store/9w8x804cgfm0j6h41k5z6lhyzfwcdzhv-make- boot0-4.2.1.drv' failed In this session the cross-compiled version of guile-static was used. The only changes were the native tar in static-binaries and native versions of bash mkdir tar xz at gnu/packages/bootstrap/i586-gnu Thanks! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-04 4:31 ` Svante Signell @ 2019-09-04 6:25 ` Svante Signell 2019-09-04 7:52 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-04 6:25 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Wed, 2019-09-04 at 06:31 +0200, Svante Signell wrote: > > unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m- > guile-bootstrap-2.0'... This stuff comes from gnu/packages/bootstrap.scm #!~a export GUILE_SYSTEM_PATH=~a/share/guile/2.0 export GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache exec -a \"~a0\" ~a \"~a@\"\n" bash out out dollar guile-real dollar))) (chmod guile #o555) (chmod bin-dir #o555)))))) (builder (add-text-to-store store "build-bootstrap-guile.sh" (format #f " echo \"unpacking bootstrap Guile to '$out'...\" ~a $out cd $out ~a -dc < $GUILE_TARBALL | ~a xv # Use the bootstrap guile to create its own wrapper to set the load path. GUILE_SYSTEM_PATH=$out/share/guile/2.0 \ GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache \ $out/bin/guile -c ~s $out ~a # Sanity check. $out/bin/guile --version~%" ... resulting in /gnu/store/f2zsfb7ywkjmv7rzbnrzxi68hrcijnsf-build-bootstrap- guile.sh echo "unpacking bootstrap Guile to '$out'..." /gnu/store/dh3nk21gj69nmqx6mp97vq97b1xz0yia-mkdir $out cd $out /gnu/store/yaxqsba39qdlyv3wrz04i3705l0l0kyp-xz -dc < $GUILE_TARBALL | /gnu/store/z8zria3rlr8p24kx4gk6wwlmfpyp4lhv-tar xv # Use the bootstrap guile to create its own wrapper to set the load path. GUILE_SYSTEM_PATH=$out/share/guile/2.0 GUILE_SYSTEM_COMPILED_PATH=$out/lib/guile/2.0/ccache $out/bin/guile -c "(begin (use-modules (ice-9 match)) (match (command-line) ((_ out bash) (let ((bin-dir (string-append out \"/bin\")) (guile (string-append out \"/bin/guile\")) (guile- real (string-append out \"/bin/.guile-real\")) (dollar (string (integer->char 36)))) (chmod bin-dir 493) (rename-file guile guile-real) (call-with-output-file guile (lambda (p) (format p \"#!~a\\nexport GUILE_SYSTEM_PATH=~a/share/guile/2.0\\nexport GUILE_SYSTEM_COMPILED_PATH=~a/lib/guile/2.0/ccache\\nexec -a \\\"~a0\\\" ~a \\\"~a@\\\"\\n\" bash out out dollar guile-real dollar))) (chmod guile 365) (chmod bin-dir 365)))))" $out /gnu/store/l79x4bhi7gw87xq0dwjia55qvdr0d4lz-bash # Sanity check. $out/bin/guile --version I would like to run this script manually: I've found that out=/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m-guile-bootstrap-2.0 But how to set GUILE_TARBALL and ~a? BTW: What is ~a, something guile-specific? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-04 6:25 ` Svante Signell @ 2019-09-04 7:52 ` Ricardo Wurmus 2019-09-04 18:24 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-04 7:52 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Wed, 2019-09-04 at 06:31 +0200, Svante Signell wrote: >> >> unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m- >> guile-bootstrap-2.0'... > > This stuff comes from gnu/packages/bootstrap.scm > #!~a > export GUILE_SYSTEM_PATH=~a/share/guile/2.0 … Didn’t you use Guile 2.2 for the bootstrap? This generated script assumes that Guile 2.0 is used. > BTW: What is ~a, something guile-specific? “~a” is a format string placeholder. (format #f "hello, ~a! I‘m ~a years old." "world" 12) => "hello, world! I‘m 12 years old." -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-04 7:52 ` Ricardo Wurmus @ 2019-09-04 18:24 ` Svante Signell 2019-09-04 21:44 ` Ricardo Wurmus 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-04 18:24 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Wed, 2019-09-04 at 09:52 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > > On Wed, 2019-09-04 at 06:31 +0200, Svante Signell wrote: > > > unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m- > > > guile-bootstrap-2.0'... > > > > export GUILE_SYSTEM_PATH=~a/share/guile/2.0 > Didn’t you use Guile 2.2 for the bootstrap? This generated script > assumes that Guile 2.0 is used. I had both guile-2.0-libs and guile-2.2-libs installed. guile-2.0-libs was installed due to autogen, one of the build-dependencies of gnutls28. Looking at the build logs of autogen for Hurd one finds that it failed to build after 1:5.18.7-3, and current is 1:5.18.12-4. I probably have to compile latest autogen with guile-2.2-libs and after that gnutls28 again. Thanks for finding out. Bad luck! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-04 18:24 ` Svante Signell @ 2019-09-04 21:44 ` Ricardo Wurmus 2019-09-08 20:55 ` Ludovic Courtès 0 siblings, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-04 21:44 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On Wed, 2019-09-04 at 09:52 +0200, Ricardo Wurmus wrote: >> Svante Signell <svante.signell@gmail.com> writes: >> >> > On Wed, 2019-09-04 at 06:31 +0200, Svante Signell wrote: >> > > unpacking bootstrap Guile to '/gnu/store/ncp3yhr6c38kqvgb8c967vnhly59yf1m- >> > > guile-bootstrap-2.0'... >> > >> > export GUILE_SYSTEM_PATH=~a/share/guile/2.0 > >> Didn’t you use Guile 2.2 for the bootstrap? This generated script >> assumes that Guile 2.0 is used. > > I had both guile-2.0-libs and guile-2.2-libs installed. guile-2.0-libs was > installed due to autogen, one of the build-dependencies of gnutls28. > > Looking at the build logs of autogen for Hurd one finds that it failed to build > after 1:5.18.7-3, and current is 1:5.18.12-4. > > I probably have to compile latest autogen with guile-2.2-libs and after that > gnutls28 again. I believe the problem is in Guix, which lets the builds for i586-gnu use Guile 2.2, but generates scripts for Guile 2.0. We probably need to change it use Guile 2.0 there as it is done for other architectures (which is why the generated scripts refer to 2.0). -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-04 21:44 ` Ricardo Wurmus @ 2019-09-08 20:55 ` Ludovic Courtès 2019-09-10 8:10 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Ludovic Courtès @ 2019-09-08 20:55 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel Hi, Ricardo Wurmus <rekado@elephly.net> skribis: > I believe the problem is in Guix, which lets the builds for i586-gnu use > Guile 2.2, but generates scripts for Guile 2.0. We probably need to > change it use Guile 2.0 there as it is done for other architectures > (which is why the generated scripts refer to 2.0). Yes, it seems easier to keep everything at 2.0 for now in ‘make-bootstrap.scm’. Someone porting to PowerPC made the same suggestion recently. Thanks, Ludo’. ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-08 20:55 ` Ludovic Courtès @ 2019-09-10 8:10 ` Svante Signell 2019-09-20 15:59 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-10 8:10 UTC (permalink / raw) To: Ludovic Courtès, Ricardo Wurmus; +Cc: guix-devel On Sun, 2019-09-08 at 22:55 +0200, Ludovic Courtès wrote: > Hi, > > Ricardo Wurmus <rekado@elephly.net> skribis: > > > I believe the problem is in Guix, which lets the builds for i586-gnu use > > Guile 2.2, but generates scripts for Guile 2.0. We probably need to > > change it use Guile 2.0 there as it is done for other architectures > > (which is why the generated scripts refer to 2.0). > > Yes, it seems easier to keep everything at 2.0 for now in > ‘make-bootstrap.scm’. > > Someone porting to PowerPC made the same suggestion recently. Back after a few days of AFK. > On Wed, 2019-09-04 at 09:52 +0200, Ricardo Wurmus wrote: > > Didn’t you use Guile 2.2 for the bootstrap? This generated script > > assumes that Guile 2.0 is used. > > I had both guile-2.0-libs and guile-2.2-libs installed. guile-2.0-libs was > installed due to autogen, one of the build-dependencies of gnutls28. So you say that > I probably have to compile latest autogen with guile-2.2-libs and after that > gnutls28 again. will not be enough? > I believe the problem is in Guix, which lets the builds for i586-gnu use > Guile 2.2, but generates scripts for Guile 2.0. We probably need to > change it use Guile 2.0 there as it is done for other architectures > (which is why the generated scripts refer to 2.0). Then the generation of bootstrap binaries for GNU/Hurd has to be reverted from Guix 1.0.1 since they build: guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz Wouldn't it be better to fully support guile-2.2 for all architectures? Just my 5c. ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-10 8:10 ` Svante Signell @ 2019-09-20 15:59 ` Svante Signell 2019-09-20 17:03 ` Ricardo Wurmus 2019-09-20 22:18 ` Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? Ricardo Wurmus 0 siblings, 2 replies; 47+ messages in thread From: Svante Signell @ 2019-09-20 15:59 UTC (permalink / raw) To: Ludovic Courtès, Ricardo Wurmus; +Cc: guix-devel [-- Attachment #1: Type: text/plain, Size: 2626 bytes --] On Tue, 2019-09-10 at 10:10 +0200, Svante Signell wrote: > On Sun, 2019-09-08 at 22:55 +0200, Ludovic Courtès wrote: > > Hi, > > > > Ricardo Wurmus <rekado@elephly.net> skribis: > > > > > I believe the problem is in Guix, which lets the builds for i586-gnu use > > > Guile 2.2, but generates scripts for Guile 2.0. We probably need to > > > change it use Guile 2.0 there as it is done for other architectures > > > (which is why the generated scripts refer to 2.0). > > > > Yes, it seems easier to keep everything at 2.0 for now in > > ‘make-bootstrap.scm’. On a GNU/Linux amd64 qemu image: ================================ git clone https://git.savannah.gnu.org/git/guix.git cd guix autoreconf -ivf ./configure --prefix=/usr 2>&1 | tee ../configure.log make 2>&1 | tee ../make-guix.log I used the attached patches to build the bootstrap tarballs with command: Terminal 1: <as root> export GUILE_LOAD_PATH=/usr/share/guile/site/2.2/ ./pre-inst-env ./guix-daemon --debug --build-users-group=guixbuild Terminal 2: export GUILE_LOAD_PATH=/usr/share/guile/site/2.2/ ./pre-inst-env guix build --target=i586-pc-gnu bootstrap-tarballs 2>&1 | tee ../bootstrap-tarballs-i586-pc-gnu.log Build took around two days, and the log file is 361MB. Note: --target=i586-gnu does not work! apt-get install guile-2.2 guile-gcrypt libgnutls30 guile-sqlite3 guile-json guile-bytestructures make zlib1g bzip2 libgcrypt20 sqlite3 g++ guile-2.0 guile- 2.0-libs guile-2.2-dev libsqlite3-dev guile-ssh libgit2-27 libgit2-dev texinfo texlive-base help2man guile-json is too old: Install 3.1.0-1. apt-get install -t experimental guile-json guile-git was built from git and guile-gnutls was built from a modified version of gnutls28-3.6.9-5. However, for the dependencies I needed guile-2.2 to be installed: apt-get remove --purge guile-2.2 guile-2.2* guile-bytestructures* guile-gcrypt* guile-gnutls* guile-json* guile- sqlite3* guile-ssh* dpkg -S /usr/share/guile/site/ guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-gnutls, guile-json: /usr/share/guile/site dpkg -S /usr/share/guile/site/2.2 guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-json: /usr/share/guile/site/2.2 On the Hurd box: ================ The cross-built files xz and guile are corrupt (maybe tar too): /gnu/store/...-xz: Error creating a pipe: Function not implemented On the Linux box: ================= Extracting and running guile from guile-static-stripped-2.0.14-i586-pc- gnu.tar.xz ./bin/guile --version Throw without catch before boot: Aborting. Where did things go wrong or where did I miss something? Thanks! [-- Attachment #2: doc_local.mk.diff --] [-- Type: text/x-patch, Size: 642 bytes --] --- a/doc/local.mk 2019-09-16 17:09:49.972000000 +0200 +++ b/doc/local.mk 2019-09-16 17:23:41.812000000 +0200 @@ -21,12 +21,12 @@ # You should have received a copy of the GNU General Public License # along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. -info_TEXINFOS = %D%/guix.texi \ - %D%/guix.de.texi \ - %D%/guix.es.texi \ - %D%/guix.fr.texi \ - %D%/guix.ru.texi \ - %D%/guix.zh_CN.texi +info_TEXINFOS = %D%/guix.texi +# %D%/guix.de.texi \ +# %D%/guix.es.texi \ +# %D%/guix.fr.texi \ +# %D%/guix.ru.texi \ +# %D%/guix.zh_CN.texi %C%_guix_TEXINFOS = \ %D%/contributing.texi \ [-- Attachment #3: gnu_packages_make-bootstrap.scm.diff --] [-- Type: text/x-patch, Size: 3938 bytes --] --- a/gnu/packages/make-bootstrap.scm 2019-09-19 10:41:28.856000000 +0200 +++ b/gnu/packages/make-bootstrap.scm 2019-09-19 10:39:27.420000000 +0200 @@ -700,29 +700,29 @@ ;; .scm and .go files relative to its installation directory, rather ;; than in hard-coded configure-time paths. (let* ((patches (cons* (search-patch "guile-relocatable.patch") - (search-patch "guile-2.2-default-utf8.patch") + (search-patch "guile-default-utf8.patch") (search-patch "guile-linux-syscalls.patch") - (origin-patches (package-source guile-2.2)))) - (source (origin (inherit (package-source guile-2.2)) + (origin-patches (package-source guile-2.0)))) + (source (origin (inherit (package-source guile-2.0)) (patches patches))) - (guile (package (inherit guile-2.2) - (name (string-append (package-name guile-2.2) "-static")) + (guile (package (inherit guile-2.0) + (name (string-append (package-name guile-2.0) "-static")) (source source) (synopsis "Statically-linked and relocatable Guile") ;; Remove the 'debug' output (see above for the reason.) - (outputs (delete "debug" (package-outputs guile-2.2))) + (outputs (delete "debug" (package-outputs guile-2.0))) (inputs `(("libunistring:static" ,libunistring "static") - ,@(package-inputs guile-2.2))) + ,@(package-inputs guile-2.0))) (propagated-inputs `(("bdw-gc" ,libgc) ,@(alist-delete "bdw-gc" - (package-propagated-inputs guile-2.2)))) + (package-propagated-inputs guile-2.0)))) (arguments - (substitute-keyword-arguments (package-arguments guile-2.2) + (substitute-keyword-arguments (package-arguments guile-2.0) ((#:configure-flags flags '()) ;; When `configure' checks for ltdl availability, it ;; doesn't try to link using libtool, and thus fails @@ -745,7 +745,7 @@ (("^guile_LDFLAGS =") "guile_LDFLAGS = -all-static") - ;; Add `-ldl' *after* libguile-2.2.la. + ;; Add `-ldl' *after* libguile-2.0.la. (("^guile_LDADD =(.*)$" _ ldadd) (string-append "guile_LDADD = " (string-trim-right ldadd) @@ -777,13 +777,13 @@ (out (assoc-ref %outputs "out")) (guile1 (string-append in "/bin/guile")) (guile2 (string-append out "/bin/guile"))) - (mkdir-p (string-append out "/share/guile/2.2")) - (copy-recursively (string-append in "/share/guile/2.2") - (string-append out "/share/guile/2.2")) - - (mkdir-p (string-append out "/lib/guile/2.2/ccache")) - (copy-recursively (string-append in "/lib/guile/2.2/ccache") - (string-append out "/lib/guile/2.2/ccache")) + (mkdir-p (string-append out "/share/guile/2.0")) + (copy-recursively (string-append in "/share/guile/2.0") + (string-append out "/share/guile/2.0")) + + (mkdir-p (string-append out "/lib/guile/2.0/ccache")) + (copy-recursively (string-append in "/lib/guile/2.0/ccache") + (string-append out "/lib/guile/2.0/ccache")) (mkdir (string-append out "/bin")) (copy-file guile1 guile2) ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 15:59 ` Svante Signell @ 2019-09-20 17:03 ` Ricardo Wurmus 2019-09-20 17:49 ` Svante Signell 2019-09-20 22:18 ` Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? Ricardo Wurmus 1 sibling, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-20 17:03 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > On a GNU/Linux amd64 qemu image: > ================================ […] > apt-get install guile-2.2 guile-gcrypt libgnutls30 guile-sqlite3 guile-json > guile-bytestructures make zlib1g bzip2 libgcrypt20 sqlite3 g++ guile-2.0 guile- > 2.0-libs guile-2.2-dev libsqlite3-dev guile-ssh libgit2-27 libgit2-dev texinfo > texlive-base help2man > > guile-json is too old: Install 3.1.0-1. > apt-get install -t experimental guile-json > > guile-git was built from git and guile-gnutls was built from a modified version > of gnutls28-3.6.9-5. > > However, for the dependencies I needed guile-2.2 to be installed: > apt-get remove --purge guile-2.2 > guile-2.2* guile-bytestructures* guile-gcrypt* guile-gnutls* guile-json* guile- > sqlite3* guile-ssh* > > dpkg -S /usr/share/guile/site/ > guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-gnutls, > guile-json: /usr/share/guile/site > > dpkg -S /usr/share/guile/site/2.2 > guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-json: > /usr/share/guile/site/2.2 You can skip all of this by building the bootstrap binaries on a system where Guix is installed. Then it’s merely ’guix environment guix’. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 17:03 ` Ricardo Wurmus @ 2019-09-20 17:49 ` Svante Signell 2019-09-20 18:48 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-20 17:49 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-09-20 at 19:03 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > > On a GNU/Linux amd64 qemu image: > > > > > > dpkg -S /usr/share/guile/site/2.2 > > guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-json: > > /usr/share/guile/site/2.2 > > You can skip all of this by building the bootstrap binaries on a system > where Guix is installed. Then it’s merely ’guix environment guix’. And how do I apply:gnu_packages_make-bootstrap.scm.diff? Doing guest@gnu ~ [env]$ guix build --target=i586-pc-gnu bootstrap-tarballs 2>&1 | tee ./bootstrap-tarballs-i586-pc-gnu.log only downloads the already built binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz gcc-stripped-5.5.0-i586-pc-gnu.tar.xz static-binaries-0-i586-pc-gnu.tar.xz glibc-stripped-2.28-i586-pc-gnu.tar.xz No guile-2.0 here?? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 17:49 ` Svante Signell @ 2019-09-20 18:48 ` Svante Signell 2019-09-20 19:12 ` Jonathan Brielmaier 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-20 18:48 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Fri, 2019-09-20 at 19:49 +0200, Svante Signell wrote: > On Fri, 2019-09-20 at 19:03 +0200, Ricardo Wurmus wrote: > > Svante Signell <svante.signell@gmail.com> writes: > > > > > On a GNU/Linux amd64 qemu image: > > > > > > > > > dpkg -S /usr/share/guile/site/2.2 > > > guile-sqlite3, guile-gcrypt, guile-bytestructures, guile-ssh, guile-json: > > > /usr/share/guile/site/2.2 > > > > You can skip all of this by building the bootstrap binaries on a system > > where Guix is installed. Then it’s merely ’guix environment guix’. > > And how do I apply:gnu_packages_make-bootstrap.scm.diff? Doing > guest@gnu ~ [env]$ guix build --target=i586-pc-gnu bootstrap-tarballs 2>&1 | > tee > ./bootstrap-tarballs-i586-pc-gnu.log > only downloads the already built > binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz > guile-static-stripped-2.2.4-i586-pc-gnu.tar.xz > gcc-stripped-5.5.0-i586-pc-gnu.tar.xz > static-binaries-0-i586-pc-gnu.tar.xz > glibc-stripped-2.28-i586-pc-gnu.tar.xz > > No guile-2.0 here?? find /gnu/store -name "make-bootstrap.scm"|grep guix-packages- source/gnu/packages|wc -l 12 Which one to patch?? There are also .cache files... Confusing as ever. Seem like the time to learn will be long! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 18:48 ` Svante Signell @ 2019-09-20 19:12 ` Jonathan Brielmaier 2019-09-21 11:26 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Jonathan Brielmaier @ 2019-09-20 19:12 UTC (permalink / raw) To: guix-devel On 20.09.19 20:48, Svante Signell wrote: > find /gnu/store -name "make-bootstrap.scm"|grep guix-packages- > source/gnu/packages|wc -l > 12 > Which one to patch?? > There are also .cache files... > > Confusing as ever. Seem like the time to learn will be long! The /gnu/store is read-only, you should not patch something in there. If I got your situation correctly you need to do the following steps. 1. Obtain the guix git repo git clone https://git.savannah.gnu.org/git/guix.git cd guix/ patch the files you need to patch 2. Get an environment with the dependencies of guix. - the most simple way is to install guix itself from a binary. See https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation and then use the `guix environment` feature. After you installed guix successfull, just do inside your guix git repo: guix environment guix - the other way is to get the dependencies from your distribution. For openSUSE Tumbleweed this would be: sudo zypper addrepo https://download.opensuse.org/repositories/home:/jbrielmaier:/guix/openSUSE_Tumbleweed/home:jbrielmaier:guix.repo sudo zypper refresh sudo zypper source-install --build-deps-only guix 3. Now you have the dependencies for building your patched guix from source. Inside the guix git repo do: ./bootstrap ./configure --localstatedir=/var make 4. Now there is guix with the changes you patched in this git repo. You can use it simply by using the pre-inst-env script: ./pre-inst-env guix build stuff-for-hurd-which-need-this-patch You know can just patch files in the guix git repo. This will directly be "visible" in ./pre-inst-env guix. So you don't need to do step 3 all the time :) I hope this helps Jonathan ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 19:12 ` Jonathan Brielmaier @ 2019-09-21 11:26 ` Svante Signell 2019-09-21 16:47 ` Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-21 11:26 UTC (permalink / raw) To: guix-devel On Fri, 2019-09-20 at 21:12 +0200, Jonathan Brielmaier wrote: > On 20.09.19 20:48, Svante Signell wrote: > If I got your situation correctly you need to do the following steps. > > 1. Obtain the guix git repo > git clone https://git.savannah.gnu.org/git/guix.git > cd guix/ > patch the files you need to patch > > 2. Get an environment with the dependencies of guix. > - the most simple way is to install guix itself from a binary. See > https://guix.gnu.org/manual/en/html_node/Binary-Installation.html#Binary-Installation > and then use the `guix environment` feature. After you installed guix > successfull, just do inside your guix git repo: > guix environment guix > > 3. Now you have the dependencies for building your patched guix from > source. Inside the guix git repo do: > ./bootstrap > ./configure --localstatedir=/var > make > > 4. Now there is guix with the changes you patched in this git repo. You > can use it simply by using the pre-inst-env script: > ./pre-inst-env guix build stuff-for-hurd-which-need-this-patch > > You know can just patch files in the guix git repo. This will directly > be "visible" in ./pre-inst-env guix. So you don't need to do step 3 all > the time :) Thanks, I have now built the cross bootstrap tarballs again, on a GNU/Linux pre- installed image running guix. The results are the same as for the previous build on a Debian GNU/Linux amd64 image: binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz gcc-stripped-5.5.0-i586-pc-gnu.tar.xz glibc-stripped-2.28-i586-pc-gnu.tar.xz guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz static-binaries-0-i586-pc-gnu.tar.xz Extracting bash, mkdir, tar, xz and guile and run them with --version shows that at least xz and guile are corrupt: gnu/packages/bootstrap/i586-gnu/xz --version gnu/packages/bootstrap/i586-gnu/xz: Error creating a pipe: Function not implemented gnu/packages/bootstrap/i586-gnu/guile --version Throw without catch before boot: Aborting. Aborted (core dumped) Maybe it is time to spend time on something else for now... ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-21 11:26 ` Svante Signell @ 2019-09-21 16:47 ` Svante Signell 2019-09-22 8:45 ` Need help: Re: Status update+patches:Re: I managed to ... GNU/Hurd Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-21 16:47 UTC (permalink / raw) To: guix-devel [-- Attachment #1: Type: text/plain, Size: 657 bytes --] On Sat, 2019-09-21 at 13:26 +0200, Svante Signell wrote: > Extracting bash, mkdir, tar, xz and guile and run them with --version shows > that at least xz and guile are corrupt: > > gnu/packages/bootstrap/i586-gnu/xz --version > gnu/packages/bootstrap/i586-gnu/xz: Error creating a pipe: Function not > implemented > > gnu/packages/bootstrap/i586-gnu/guile --version > Throw without catch before boot: > Aborting. > Aborted (core dumped) Replacing the cross-built versions with dynamically built native versions of xz and guile-2.0, I did come further, but need help interpreting the log file, attached: make-boot0-4.2.1.drv.gz. Where is the real error? [-- Attachment #2: make-boot0-4.2.1.drv.gz --] [-- Type: application/gzip, Size: 4010 bytes --] ^ permalink raw reply [flat|nested] 47+ messages in thread
* Need help: Re: Status update+patches:Re: I managed to ... GNU/Hurd ... 2019-09-21 16:47 ` Svante Signell @ 2019-09-22 8:45 ` Svante Signell 2019-09-24 13:06 ` Summary Re: Need help: " Svante Signell 0 siblings, 1 reply; 47+ messages in thread From: Svante Signell @ 2019-09-22 8:45 UTC (permalink / raw) To: guix-devel [-- Attachment #1: Type: text/plain, Size: 853 bytes --] On Sat, 2019-09-21 at 18:47 +0200, Svante Signell wrote: > On Sat, 2019-09-21 at 13:26 +0200, Svante Signell wrote: > > > Extracting bash, mkdir, tar, xz and guile and run them with --version shows > > that at least xz and guile are corrupt: > > > > gnu/packages/bootstrap/i586-gnu/xz --version > > gnu/packages/bootstrap/i586-gnu/xz: Error creating a pipe: Function not > > implemented > > > > gnu/packages/bootstrap/i586-gnu/guile --version > > Throw without catch before boot: > > Aborting. > > Aborted (core dumped) > > Replacing the cross-built versions with dynamically built native versions of > xz > and guile-2.0, I did come further, but need help interpreting the log file, > attached: make-boot0-4.2.1.drv.gz. Where is the real error? I shouldn't have attached the compressed version, the uncompressed version is small enough, attached! [-- Attachment #2: make-boot0-4.2.1.drv --] [-- Type: text/plain, Size: 19044 bytes --] starting phase `set-SOURCE-DATE-EPOCH' phase `set-SOURCE-DATE-EPOCH' succeeded after 0.0 seconds starting phase `set-paths' environment variable `PATH' set to `/gnu/store/5zpkb4zqhri5myzppaay0p0bdihgsmx6-gcc-bootstrap-0/bin:/gnu/store/1caqn4d3px2kfc079aisys6bamxc7ga2-binutils-bootstrap-0/bin:/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin' environment variable `CPATH' set to `/gnu/store/2rrv9p513nj5pg13w9558dlng0sz28ai-glibc-bootstrap-0/include:/gnu/store/5zpkb4zqhri5myzppaay0p0bdihgsmx6-gcc-bootstrap-0/include' environment variable `LIBRARY_PATH' set to `/gnu/store/2rrv9p513nj5pg13w9558dlng0sz28ai-glibc-bootstrap-0/lib:/gnu/store/5zpkb4zqhri5myzppaay0p0bdihgsmx6-gcc-bootstrap-0/lib' phase `set-paths' succeeded after 0.0 seconds starting phase `install-locale' warning: failed to install 'en_US.utf8' locale: Invalid argument phase `install-locale' succeeded after 0.0 seconds starting phase `unpack' make-4.2.1/ make-4.2.1/ABOUT-NLS make-4.2.1/AUTHORS make-4.2.1/COPYING make-4.2.1/ChangeLog make-4.2.1/INSTALL make-4.2.1/Makefile.DOS make-4.2.1/Makefile.am make-4.2.1/Makefile.ami make-4.2.1/Makefile.in make-4.2.1/NEWS make-4.2.1/NMakefile make-4.2.1/README make-4.2.1/README.Amiga make-4.2.1/README.DOS make-4.2.1/README.OS2 make-4.2.1/README.VMS make-4.2.1/README.W32 make-4.2.1/README.customs make-4.2.1/SCOPTIONS make-4.2.1/SMakefile make-4.2.1/acinclude.m4 make-4.2.1/aclocal.m4 make-4.2.1/alloca.c make-4.2.1/amiga.c make-4.2.1/amiga.h make-4.2.1/ar.c make-4.2.1/arscan.c make-4.2.1/build.sh.in make-4.2.1/build_w32.bat make-4.2.1/commands.c make-4.2.1/commands.h make-4.2.1/config/ make-4.2.1/config/Makefile.am make-4.2.1/config/Makefile.in make-4.2.1/config/ar-lib make-4.2.1/config/compile make-4.2.1/config/config.guess make-4.2.1/config/config.rpath make-4.2.1/config/config.sub make-4.2.1/config/depcomp make-4.2.1/config/dospaths.m4 make-4.2.1/config/gettext.m4 make-4.2.1/config/iconv.m4 make-4.2.1/config/install-sh make-4.2.1/config/intlmacosx.m4 make-4.2.1/config/lib-ld.m4 make-4.2.1/config/lib-link.m4 make-4.2.1/config/lib-prefix.m4 make-4.2.1/config/longlong.m4 make-4.2.1/config/mdate-sh make-4.2.1/config/missing make-4.2.1/config/nls.m4 make-4.2.1/config/po.m4 make-4.2.1/config/progtest.m4 make-4.2.1/config/texinfo.tex make-4.2.1/config.ami make-4.2.1/config.h-vms make-4.2.1/config.h.W32 make-4.2.1/config.h.in make-4.2.1/configh.dos make-4.2.1/configure make-4.2.1/configure.ac make-4.2.1/configure.bat make-4.2.1/debug.h make-4.2.1/default.c make-4.2.1/dep.h make-4.2.1/dir.c make-4.2.1/doc/ make-4.2.1/doc/Makefile.am make-4.2.1/doc/Makefile.in make-4.2.1/doc/fdl.texi make-4.2.1/doc/make-stds.texi make-4.2.1/doc/make.info make-4.2.1/doc/make.info-1 make-4.2.1/doc/make.info-2 make-4.2.1/doc/make.texi make-4.2.1/doc/stamp-vti make-4.2.1/doc/version.texi make-4.2.1/dosbuild.bat make-4.2.1/expand.c make-4.2.1/file.c make-4.2.1/filedef.h make-4.2.1/function.c make-4.2.1/getloadavg.c make-4.2.1/getopt.c make-4.2.1/getopt.h make-4.2.1/getopt1.c make-4.2.1/gettext.h make-4.2.1/glob/ make-4.2.1/glob/COPYING.LIB make-4.2.1/glob/ChangeLog make-4.2.1/glob/Makefile.am make-4.2.1/glob/Makefile.ami make-4.2.1/glob/Makefile.in make-4.2.1/glob/SCOPTIONS make-4.2.1/glob/SMakefile make-4.2.1/glob/configure.bat make-4.2.1/glob/fnmatch.c make-4.2.1/glob/fnmatch.h make-4.2.1/glob/glob.c make-4.2.1/glob/glob.h make-4.2.1/gmk-default.h make-4.2.1/gmk-default.scm make-4.2.1/gnumake.h make-4.2.1/guile.c make-4.2.1/hash.c make-4.2.1/hash.h make-4.2.1/implicit.c make-4.2.1/job.c make-4.2.1/job.h make-4.2.1/load.c make-4.2.1/loadapi.c make-4.2.1/main.c make-4.2.1/make.1 make-4.2.1/make.lnk make-4.2.1/make_msvc_net2003.sln make-4.2.1/make_msvc_net2003.vcproj make-4.2.1/makefile.com make-4.2.1/makefile.vms make-4.2.1/makeint.h make-4.2.1/misc.c make-4.2.1/os.h make-4.2.1/output.c make-4.2.1/output.h make-4.2.1/po/ make-4.2.1/po/LINGUAS make-4.2.1/po/Makefile.in.in make-4.2.1/po/Makevars make-4.2.1/po/POTFILES.in make-4.2.1/po/Rules-quot make-4.2.1/po/be.gmo make-4.2.1/po/be.po make-4.2.1/po/boldquot.sed make-4.2.1/po/cs.gmo make-4.2.1/po/cs.po make-4.2.1/po/da.gmo make-4.2.1/po/da.po make-4.2.1/po/de.gmo make-4.2.1/po/de.po make-4.2.1/po/en@boldquot.header make-4.2.1/po/en@quot.header make-4.2.1/po/es.gmo make-4.2.1/po/es.po make-4.2.1/po/fi.gmo make-4.2.1/po/fi.po make-4.2.1/po/fr.gmo make-4.2.1/po/fr.po make-4.2.1/po/ga.gmo make-4.2.1/po/ga.po make-4.2.1/po/gl.gmo make-4.2.1/po/gl.po make-4.2.1/po/he.gmo make-4.2.1/po/he.po make-4.2.1/po/hr.gmo make-4.2.1/po/hr.po make-4.2.1/po/id.gmo make-4.2.1/po/id.po make-4.2.1/po/insert-header.sin make-4.2.1/po/it.gmo make-4.2.1/po/it.po make-4.2.1/po/ja.gmo make-4.2.1/po/ja.po make-4.2.1/po/ko.gmo make-4.2.1/po/ko.po make-4.2.1/po/lt.gmo make-4.2.1/po/lt.po make-4.2.1/po/make.pot make-4.2.1/po/nl.gmo make-4.2.1/po/nl.po make-4.2.1/po/pl.gmo make-4.2.1/po/pl.po make-4.2.1/po/pt_BR.gmo make-4.2.1/po/pt_BR.po make-4.2.1/po/quot.sed make-4.2.1/po/remove-potcdate.sin make-4.2.1/po/ru.gmo make-4.2.1/po/ru.po make-4.2.1/po/stamp-po make-4.2.1/po/sv.gmo make-4.2.1/po/sv.po make-4.2.1/po/tr.gmo make-4.2.1/po/tr.po make-4.2.1/po/uk.gmo make-4.2.1/po/uk.po make-4.2.1/po/vi.gmo make-4.2.1/po/vi.po make-4.2.1/po/zh_CN.gmo make-4.2.1/po/zh_CN.po make-4.2.1/posixos.c make-4.2.1/read.c make-4.2.1/remake.c make-4.2.1/remote-cstms.c make-4.2.1/remote-stub.c make-4.2.1/rule.c make-4.2.1/rule.h make-4.2.1/signame.c make-4.2.1/strcache.c make-4.2.1/subproc.bat make-4.2.1/tests/ make-4.2.1/tests/COPYING make-4.2.1/tests/ChangeLog.1 make-4.2.1/tests/NEWS make-4.2.1/tests/README make-4.2.1/tests/config-flags.pm make-4.2.1/tests/config-flags.pm.in make-4.2.1/tests/config_flags_pm.com make-4.2.1/tests/guile.supp make-4.2.1/tests/mkshadow make-4.2.1/tests/run_make_tests make-4.2.1/tests/run_make_tests.com make-4.2.1/tests/run_make_tests.pl make-4.2.1/tests/scripts/ make-4.2.1/tests/scripts/features/ make-4.2.1/tests/scripts/features/archives make-4.2.1/tests/scripts/features/comments make-4.2.1/tests/scripts/features/conditionals make-4.2.1/tests/scripts/features/default_names make-4.2.1/tests/scripts/features/double_colon make-4.2.1/tests/scripts/features/echoing make-4.2.1/tests/scripts/features/errors make-4.2.1/tests/scripts/features/escape make-4.2.1/tests/scripts/features/export make-4.2.1/tests/scripts/features/include make-4.2.1/tests/scripts/features/jobserver make-4.2.1/tests/scripts/features/load make-4.2.1/tests/scripts/features/loadapi make-4.2.1/tests/scripts/features/mult_rules make-4.2.1/tests/scripts/features/mult_targets make-4.2.1/tests/scripts/features/order_only make-4.2.1/tests/scripts/features/output-sync make-4.2.1/tests/scripts/features/override make-4.2.1/tests/scripts/features/parallelism make-4.2.1/tests/scripts/features/patspecific_vars make-4.2.1/tests/scripts/features/patternrules make-4.2.1/tests/scripts/features/quoting make-4.2.1/tests/scripts/features/recursion make-4.2.1/tests/scripts/features/reinvoke make-4.2.1/tests/scripts/features/rule_glob make-4.2.1/tests/scripts/features/se_explicit make-4.2.1/tests/scripts/features/se_implicit make-4.2.1/tests/scripts/features/se_statpat make-4.2.1/tests/scripts/features/shell_assignment make-4.2.1/tests/scripts/features/statipattrules make-4.2.1/tests/scripts/features/targetvars make-4.2.1/tests/scripts/features/utf8 make-4.2.1/tests/scripts/features/varnesting make-4.2.1/tests/scripts/features/vpath make-4.2.1/tests/scripts/features/vpath2 make-4.2.1/tests/scripts/features/vpath3 make-4.2.1/tests/scripts/features/vpathgpath make-4.2.1/tests/scripts/features/vpathplus make-4.2.1/tests/scripts/functions/ make-4.2.1/tests/scripts/functions/abspath make-4.2.1/tests/scripts/functions/addprefix make-4.2.1/tests/scripts/functions/addsuffix make-4.2.1/tests/scripts/functions/andor make-4.2.1/tests/scripts/functions/basename make-4.2.1/tests/scripts/functions/call make-4.2.1/tests/scripts/functions/dir make-4.2.1/tests/scripts/functions/error make-4.2.1/tests/scripts/functions/eval make-4.2.1/tests/scripts/functions/file make-4.2.1/tests/scripts/functions/filter-out make-4.2.1/tests/scripts/functions/findstring make-4.2.1/tests/scripts/functions/flavor make-4.2.1/tests/scripts/functions/foreach make-4.2.1/tests/scripts/functions/guile make-4.2.1/tests/scripts/functions/if make-4.2.1/tests/scripts/functions/join make-4.2.1/tests/scripts/functions/notdir make-4.2.1/tests/scripts/functions/origin make-4.2.1/tests/scripts/functions/realpath make-4.2.1/tests/scripts/functions/shell make-4.2.1/tests/scripts/functions/sort make-4.2.1/tests/scripts/functions/strip make-4.2.1/tests/scripts/functions/substitution make-4.2.1/tests/scripts/functions/suffix make-4.2.1/tests/scripts/functions/value make-4.2.1/tests/scripts/functions/warning make-4.2.1/tests/scripts/functions/wildcard make-4.2.1/tests/scripts/functions/word make-4.2.1/tests/scripts/misc/ make-4.2.1/tests/scripts/misc/bs-nl make-4.2.1/tests/scripts/misc/close_stdout make-4.2.1/tests/scripts/misc/fopen-fail make-4.2.1/tests/scripts/misc/general1 make-4.2.1/tests/scripts/misc/general2 make-4.2.1/tests/scripts/misc/general3 make-4.2.1/tests/scripts/misc/general4 make-4.2.1/tests/scripts/misc/utf8 make-4.2.1/tests/scripts/options/ make-4.2.1/tests/scripts/options/dash-B make-4.2.1/tests/scripts/options/dash-C make-4.2.1/tests/scripts/options/dash-I make-4.2.1/tests/scripts/options/dash-W make-4.2.1/tests/scripts/options/dash-e make-4.2.1/tests/scripts/options/dash-f make-4.2.1/tests/scripts/options/dash-k make-4.2.1/tests/scripts/options/dash-l make-4.2.1/tests/scripts/options/dash-n make-4.2.1/tests/scripts/options/dash-q make-4.2.1/tests/scripts/options/dash-t make-4.2.1/tests/scripts/options/eval make-4.2.1/tests/scripts/options/general make-4.2.1/tests/scripts/options/print-directory make-4.2.1/tests/scripts/options/symlinks make-4.2.1/tests/scripts/options/warn-undefined-variables make-4.2.1/tests/scripts/targets/ make-4.2.1/tests/scripts/targets/DEFAULT make-4.2.1/tests/scripts/targets/DELETE_ON_ERROR make-4.2.1/tests/scripts/targets/FORCE make-4.2.1/tests/scripts/targets/INTERMEDIATE make-4.2.1/tests/scripts/targets/ONESHELL make-4.2.1/tests/scripts/targets/PHONY make-4.2.1/tests/scripts/targets/POSIX make-4.2.1/tests/scripts/targets/SECONDARY make-4.2.1/tests/scripts/targets/SILENT make-4.2.1/tests/scripts/targets/clean make-4.2.1/tests/scripts/test_template make-4.2.1/tests/scripts/variables/ make-4.2.1/tests/scripts/variables/CURDIR make-4.2.1/tests/scripts/variables/DEFAULT_GOAL make-4.2.1/tests/scripts/variables/GNUMAKEFLAGS make-4.2.1/tests/scripts/variables/INCLUDE_DIRS make-4.2.1/tests/scripts/variables/LIBPATTERNS make-4.2.1/tests/scripts/variables/MAKE make-4.2.1/tests/scripts/variables/MAKECMDGOALS make-4.2.1/tests/scripts/variables/MAKEFILES make-4.2.1/tests/scripts/variables/MAKEFLAGS make-4.2.1/tests/scripts/variables/MAKELEVEL make-4.2.1/tests/scripts/variables/MAKE_RESTARTS make-4.2.1/tests/scripts/variables/MFILE_LIST make-4.2.1/tests/scripts/variables/SHELL make-4.2.1/tests/scripts/variables/automatic make-4.2.1/tests/scripts/variables/define make-4.2.1/tests/scripts/variables/flavors make-4.2.1/tests/scripts/variables/negative make-4.2.1/tests/scripts/variables/private make-4.2.1/tests/scripts/variables/special make-4.2.1/tests/scripts/variables/undefine make-4.2.1/tests/scripts/vms/ make-4.2.1/tests/scripts/vms/library make-4.2.1/tests/test_driver.pl make-4.2.1/variable.c make-4.2.1/variable.h make-4.2.1/version.c make-4.2.1/vms_exit.c make-4.2.1/vms_export_symbol.c make-4.2.1/vms_export_symbol_test.com make-4.2.1/vms_progname.c make-4.2.1/vmsdir.h make-4.2.1/vmsfunctions.c make-4.2.1/vmsify.c make-4.2.1/vmsjobs.c make-4.2.1/vpath.c make-4.2.1/w32/ make-4.2.1/w32/Makefile.am make-4.2.1/w32/Makefile.in make-4.2.1/w32/compat/ make-4.2.1/w32/compat/dirent.c make-4.2.1/w32/compat/posixfcn.c make-4.2.1/w32/include/ make-4.2.1/w32/include/dirent.h make-4.2.1/w32/include/dlfcn.h make-4.2.1/w32/include/pathstuff.h make-4.2.1/w32/include/sub_proc.h make-4.2.1/w32/include/w32err.h make-4.2.1/w32/pathstuff.c make-4.2.1/w32/subproc/ make-4.2.1/w32/subproc/NMakefile make-4.2.1/w32/subproc/misc.c make-4.2.1/w32/subproc/proc.h make-4.2.1/w32/subproc/sub_proc.c make-4.2.1/w32/subproc/w32err.c make-4.2.1/w32/w32os.c phase `unpack' succeeded after 2.5 seconds starting phase `bootstrap' GNU build system bootstrapping not needed phase `bootstrap' succeeded after 0.0 seconds starting phase `patch-usr-bin-file' patch-/usr/bin/file: warning: no replacement 'file' command, doing nothing phase `patch-usr-bin-file' succeeded after 0.0 seconds starting phase `patch-source-shebangs' patch-shebang: ./build.sh.in: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/ar-lib: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/compile: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/config.guess: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/config.rpath: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/config.sub: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/depcomp: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/install-sh: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/mdate-sh: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./config/missing: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./configure: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./tests/mkshadow: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./tests/run_make_tests: changing `/bin/sh' to `/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/sh' patch-shebang: ./tests/run_make_tests.pl: warning: no binary for interpreter `perl' found in $PATH patch-shebang: ./tests/scripts/targets/DELETE_ON_ERROR: warning: no binary for interpreter `-*-perl-*-' found in $PATH patch-shebang: ./tests/scripts/targets/SECONDARY: warning: no binary for interpreter `-*-perl-*-' found in $PATH patch-shebang: ./tests/test_driver.pl: warning: no binary for interpreter `perl' found in $PATH phase `patch-source-shebangs' succeeded after 0.2 seconds starting phase `configure' source directory: "/tmp/guix-build-make-boot0-4.2.1.drv-0/make-4.2.1" (relative from build: ".") build directory: "/tmp/guix-build-make-boot0-4.2.1.drv-0/make-4.2.1" configure flags: ("CONFIG_SHELL=/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" "SHELL=/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" "--prefix=/gnu/store/gkd77b6j4skvjjxhspcnci50j9mi707n-make-boot0-4.2.1" "--enable-fast-install" "--build=i586-unknown-gnu" "make_cv_sys_gnu_glob=yes") configure: WARNING: unrecognized options: --enable-fast-install checking for a BSD-compatible install... /gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/install: cannot open 'conftest.one' for reading: Function not implemented /gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/install: cannot open 'conftest.two' for reading: Function not implemented config/install-sh -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... no checking whether make supports nested variables... no checking for style of include used by make... none checking for gcc... gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... cp: cannot open 'config/depcomp' for reading: Function not implemented ./configure: line 3978: ./depcomp: No such file or directory rm: cannot remove 'conftest.dir': Directory not empty none checking how to run the C preprocessor... /lib/cpp configure: error: in `/tmp/guix-build-make-boot0-4.2.1.drv-0/make-4.2.1': configure: error: C preprocessor "/lib/cpp" fails sanity check See `config.log' for more details rm: cannot remove 'conftest.dir': Directory not empty Backtrace: In ice-9/boot-9.scm: 160: 12 [catch #t #<catch-closure 18e04e0> ...] In unknown file: ?: 11 [apply-smob/1 #<catch-closure 18e04e0>] In ice-9/boot-9.scm: 66: 10 [call-with-prompt prompt0 ...] In ice-9/eval.scm: 432: 9 [eval # #] In ice-9/boot-9.scm: 2412: 8 [save-module-excursion #<procedure 18f0c20 at ice-9/boot-9.scm:4084:3 ()>] 4089: 7 [#<procedure 18f0c20 at ice-9/boot-9.scm:4084:3 ()>] 1734: 6 [%start-stack load-stack ...] 1739: 5 [#<procedure 18faa98 ()>] In unknown file: ?: 4 [primitive-load "/gnu/store/ijf84538c6ibvgmfw110jcbkb0553n9s-make-boot0-4.2.1-guile-builder"] In ice-9/eval.scm: 387: 3 [eval # ()] In srfi/srfi-1.scm: 827: 2 [every1 #<procedure 1c9d5d0 at /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/gnu-build-system.scm:795:9 (expr)> ...] In /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/gnu-build-system.scm: 799: 1 [#<procedure 1c9d5d0 at /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/gnu-build-system.scm:795:9 (expr)> #] In /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/utils.scm: 616: 0 [invoke "/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" ...] /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/utils.scm:616:6: In procedure invoke: /gnu/store/jnb2sa6ycj8xhqgxx36qzxsc70cw2n06-module-import/guix/build/utils.scm:616:6: Throw to key `srfi-34' with args `(#<condition &invoke-error [program: "/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" arguments: ("./configure" "CONFIG_SHELL=/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" "SHELL=/gnu/store/793ay6x56p6cq7gba4yjw2q61x9szbjx-bootstrap-binaries-0/bin/bash" "--prefix=/gnu/store/gkd77b6j4skvjjxhspcnci50j9mi707n-make-boot0-4.2.1" "--enable-fast-install" "--build=i586-unknown-gnu" "make_cv_sys_gnu_glob=yes") exit-status: 1 term-signal: #f stop-signal: #f] 1cefbc0>)'. ^ permalink raw reply [flat|nested] 47+ messages in thread
* Summary Re: Need help: ... GNU/Hurd ... 2019-09-22 8:45 ` Need help: Re: Status update+patches:Re: I managed to ... GNU/Hurd Svante Signell @ 2019-09-24 13:06 ` Svante Signell 0 siblings, 0 replies; 47+ messages in thread From: Svante Signell @ 2019-09-24 13:06 UTC (permalink / raw) To: guix-devel On Sun, 2019-09-22 at 10:45 +0200, Svante Signell wrote: > > > Replacing the cross-built versions with dynamically built native versions of > > xz > > and guile-2.0, I did come further, but need help interpreting the log file, > > attached: make-boot0-4.2.1.drv.gz. Where is the real error? > > I shouldn't have attached the compressed version, the uncompressed version is > small enough, attached! I had to replace the following binaries in order to make ./pre-inst-env guix build -K -e '(@@ (gnu packages commencement) gnu-make- boot0))' work: bash, cat, cp, gawk, grep, install, mv, rm, rmdir, tar, xz, cpp, guile, mkdir, ./pre-inst-env guix build -K hello still hangs, so there are probably even more corrupt cross-built binaries. Has this method ever worked? For me the next logical effort would be to cross-build all the bootstrap tarballs by traditional means, e.g. from a Debian GNU/Linux amd 64 box: binutils-static-stripped-2.31.1-i586-pc-gnu.tar.xz gcc-stripped-5.5.0-i586-pc-gnu.tar.xz <- preferably a recent gcc, e.g. 9.2.1. glibc-stripped-2.28-i586-pc-gnu.tar.xz <- 2.29? guile-static-stripped-2.0.14-i586-pc-gnu.tar.xz static-binaries-0-i586-pc-gnu.tar.xz Any scheme code I can look at to find in which order to make the cross-build: binutils, gcc, glibc, (mig, hurd, gnumach), etc? Found some code in gnu/packages/cross-base.scm. (Need to learn more about scheme code, though ...) Thanks anyway! ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 15:59 ` Svante Signell 2019-09-20 17:03 ` Ricardo Wurmus @ 2019-09-20 22:18 ` Ricardo Wurmus 2019-09-21 8:10 ` Svante Signell 1 sibling, 1 reply; 47+ messages in thread From: Ricardo Wurmus @ 2019-09-20 22:18 UTC (permalink / raw) To: svante.signell; +Cc: guix-devel Svante Signell <svante.signell@gmail.com> writes: > ./pre-inst-env guix build --target=i586-pc-gnu bootstrap-tarballs 2>&1 | tee > ../bootstrap-tarballs-i586-pc-gnu.log > > Build took around two days, and the log file is 361MB. I guess that’s because you’ve rebuilt the x86_64 bootstrap first and only then built the Hurd bootstrap tarballs (which are cross-built). This is expected because you’ve changed the recipes for generating the bootstrap binaries independent of the target architecture. -- Ricardo ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-09-20 22:18 ` Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? Ricardo Wurmus @ 2019-09-21 8:10 ` Svante Signell 0 siblings, 0 replies; 47+ messages in thread From: Svante Signell @ 2019-09-21 8:10 UTC (permalink / raw) To: Ricardo Wurmus; +Cc: guix-devel On Sat, 2019-09-21 at 00:18 +0200, Ricardo Wurmus wrote: > Svante Signell <svante.signell@gmail.com> writes: > > > ./pre-inst-env guix build --target=i586-pc-gnu bootstrap-tarballs 2>&1 | tee > > ../bootstrap-tarballs-i586-pc-gnu.log > > > > Build took around two days, and the log file is 361MB. > > I guess that’s because you’ve rebuilt the x86_64 bootstrap first and > only then built the Hurd bootstrap tarballs (which are cross-built). > This is expected because you’ve changed the recipes for generating the > bootstrap binaries independent of the target architecture. How would the patch for gnu/packages/make-bootstrap.scm look like then? ^ permalink raw reply [flat|nested] 47+ messages in thread
* Re: I managed to build guix natively on Debian GNU/Hurd , what's next? 2019-08-30 18:25 ` Svante Signell 2019-08-30 21:07 ` Svante Signell @ 2019-08-30 21:56 ` Julien Lepiller 1 sibling, 0 replies; 47+ messages in thread From: Julien Lepiller @ 2019-08-30 21:56 UTC (permalink / raw) To: Svante Signell; +Cc: guix-devel Le Fri, 30 Aug 2019 20:25:24 +0200, Svante Signell <svante.signell@gmail.com> a écrit : > On Fri, 2019-08-30 at 19:14 +0200, Julien Lepiller wrote: > > > a écrit : > > > > > Thanks I'll try to install them. It seems like gcc is a little old, > > do > > > you have > > > notes somewhere on how these cross-built packages were created? > > > > > I assume they can be built them within guix e.g. on GNU/Linux > > > amd64. > > > > > > Build order?: > > > 1) binutils > > > 2) glibc > > > 3) gcc > > > 4) ? > > > > Hi, > > > > I think this is the relevant part in the manual: > > http://guix.gnu.org/manual/en/html_node/Bootstrapping.html#Building-the-Bootstrap-Binaries > > Yes, but guix build bootstrap-tarballs --system=i586-gnu on GNU/Linux > amd64 results in: > guix build: error: could not find bootstrap binary 'tar' for system > 'i586-gnu' > this might actually be more relevent: http://guix.gnu.org/manual/en/html_node/Porting.html#Porting so: guix build --target=i586-gnu bootstrap-tarballs I think, where i586-gnu is to be replaced by the right triplet for the Hurd. Maybe it's already the right triplet, but it doesn't look like a triplet, so it's a bit confusing. ^ permalink raw reply [flat|nested] 47+ messages in thread
end of thread, other threads:[~2019-09-24 13:06 UTC | newest] Thread overview: 47+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2019-08-29 19:25 I managed to build guix natively on Debian GNU/Hurd , what's next? Svante Signell 2019-08-29 22:51 ` Svante Signell 2019-08-29 23:36 ` Ricardo Wurmus 2019-08-30 12:00 ` Svante Signell 2019-08-30 17:14 ` Julien Lepiller 2019-08-30 18:25 ` Svante Signell 2019-08-30 21:07 ` Svante Signell 2019-08-30 21:30 ` Ricardo Wurmus 2019-08-30 21:52 ` Svante Signell 2019-08-30 22:17 ` Ricardo Wurmus 2019-08-31 8:06 ` Svante Signell 2019-08-31 8:13 ` Julien Lepiller 2019-08-31 9:24 ` Svante Signell 2019-08-31 9:41 ` Julien Lepiller 2019-08-31 12:12 ` Ricardo Wurmus 2019-08-31 17:27 ` Svante Signell 2019-09-01 9:11 ` Svante Signell 2019-09-01 9:32 ` Efraim Flashner 2019-09-01 13:28 ` Svante Signell 2019-09-01 18:01 ` Svante Signell 2019-09-03 12:07 ` Status update+patches:Re: " Svante Signell 2019-09-03 12:58 ` Ricardo Wurmus 2019-09-03 13:56 ` Svante Signell 2019-09-03 14:34 ` Svante Signell 2019-09-03 21:13 ` Svante Signell 2019-09-03 21:26 ` Ricardo Wurmus 2019-09-03 21:46 ` Svante Signell 2019-09-03 22:01 ` Ricardo Wurmus 2019-09-04 4:31 ` Svante Signell 2019-09-04 6:25 ` Svante Signell 2019-09-04 7:52 ` Ricardo Wurmus 2019-09-04 18:24 ` Svante Signell 2019-09-04 21:44 ` Ricardo Wurmus 2019-09-08 20:55 ` Ludovic Courtès 2019-09-10 8:10 ` Svante Signell 2019-09-20 15:59 ` Svante Signell 2019-09-20 17:03 ` Ricardo Wurmus 2019-09-20 17:49 ` Svante Signell 2019-09-20 18:48 ` Svante Signell 2019-09-20 19:12 ` Jonathan Brielmaier 2019-09-21 11:26 ` Svante Signell 2019-09-21 16:47 ` Svante Signell 2019-09-22 8:45 ` Need help: Re: Status update+patches:Re: I managed to ... GNU/Hurd Svante Signell 2019-09-24 13:06 ` Summary Re: Need help: " Svante Signell 2019-09-20 22:18 ` Status update+patches:Re: I managed to build guix natively on Debian GNU/Hurd , what's next? Ricardo Wurmus 2019-09-21 8:10 ` Svante Signell 2019-08-30 21:56 ` Julien Lepiller
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).