all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Vagrant Cascadian <vagrant@debian.org>
To: Efraim Flashner <efraim@flashner.co.il>, guix-devel@gnu.org
Subject: Re: RISCV porting effort
Date: Sun, 13 Jun 2021 10:24:13 -0700	[thread overview]
Message-ID: <87o8c91xvm.fsf@yucca> (raw)
In-Reply-To: <YL3GOGK20wL+cWiL@3900XT>

[-- Attachment #1: Type: text/plain, Size: 4211 bytes --]

On 2021-06-07, Efraim Flashner wrote:
> Last week my HiFive Umatched¹ board came
...
> Ubuntu has an image for the board² which booted up just fine and I'm
> using, since I didn't want to spend too long getting Debian to run on
> the board.

I, on the other hand, went straight for Debian, of course! I stole the
vendor kernel and u-boot and built a Debian rootfs... and after a few
tries got it running.


> Upstream u-boot support was merged days ago³ so we should be able to add
> support to our u-boot package soon-ish™.

I haven't gotten u-boot working on Debian yet; builds fine, but has some
problem setting up reserved memory in the device-tree when booting. I
should try updating the guix u-boot-sifive-unmatched package and see if
that works any differently (different toolchain versions sometimes has
an effect).

There may be patches not yet upstreamed from:

  https://github.com/sifive/meta-sifive/tree/2021.05/recipes-bsp/u-boot/files/unmatched

Those are applied against u-boot 2021.01 ... and I haven't found any
that are likely related to the issue with reserved memory in the device-tree.


> Building Guix from sources is much easier thanks to the work of Vagrant,
> I was able to apt install most of the dependencies on riscv. The
> packaged version of guile-zlib was too old in 21.04 so I built that from
> source (0.1.0 is available in Debian experimental), and I also had to
> build gnutls from source for the guile-3.0 bindings. I added the riscv
> binaries to (gnu packages bootstrap) and temporarily switched the
> raw-build function to look for 3.0 guile libraries instead of 2.0.

I've managed to get so far as applying the patches from wip-riscv to the
guix 1.3.0 package in Debian and built it! It even runs, for the most
part!

That said, it was absurdly slow ... ~5 hours to build guix (not
including tests, which I disabled!) even though it was built entirely
within a tmpfs filesystem (what else would you do with 16GB of
ram?). Makes me worry how fast guix pull will perform...

I tried both with guile 3.0 (which required rebuilding guile-gnutls
against guile-3.0) and guile 2.2 (though I missed some of the patches,
so it didn't work too well).

I did get so far as trying to build hello, but fails building
diffutils-boot0:

  guix build hello
  ...
  config.status: error: in
  `/tmp/guix-build-diffutils-boot0-3.7.drv-0/diffutils-3.7':
  config.status: error: Something went wrong bootstrapping makefile
  fragments
      for automatic dependency tracking.  Try re-running configure with
  the
      '--disable-dependency-tracking' option to at least be able to
  build
      the package (albeit without support for automatic dependency
  tracking).
  See `config.log' for more details
  command
  "/gnu/store/0bxdn94rl7fvqksgf60vffsjn6h8fky8-bootstrap-binaries-0/bin/bash"
  "./configure" "CONFIG_SHELL=/gnu/st
  ore/0bxdn94rl7fvqksgf60vffsjn6h8fky8-bootstrap-binaries-0/bin/bash"
  "SHELL=/gnu/store/0bxdn94rl7fvqksgf60vffsjn6h8fky8-bootstrap-binaries-0/bin/bash"
  "--prefix=/gnu/store/5x2c8fgmw6hw5njish7n5ll28wink9fl-diffutils-boot0-3.7"
  "--enable-fas
  t-install" "--build=riscv64-unknown-linux-gnu" failed with status 1
  note: keeping build directory
  `/tmp/guix-build-diffutils-boot0-3.7.drv-1'
  builder for
  `/gnu/store/a3dn372lr9pgn3mb7j5s423x0ja1893q-diffutils-boot0-3.7.drv'
  failed with exit code 1              build of
  /gnu/store/a3dn372lr9pgn3mb7j5s423x0ja1893q-diffutils-boot0-3.7.drv
  failed
  View build log at '/var/log/guix/drvs/a3/dn372lr9pgn3mb7j5s423x0ja1893q-diffutils-boot0-3.7.drv.bz2'.
  ...
  cannot build derivation
  `/gnu/store/62l68kz6zz8m008qa8d0c5ariz7fd97z-hello-2.10.drv': 1
  dependencies couldn't be built
  guix build: error: build of
  `/gnu/store/62l68kz6zz8m008qa8d0c5ariz7fd97z-hello-2.10.drv' failed


I didn't find anything obvious to me in the build log or config.log, but
maybe someone else will:

  https://www.aikidev.net/~vagrant/riscv64/guix/


Some other boot-* stuff downloaded and/or built successfully, but this
appears to block any further progress for me at the moment...


live well,
  vagrant

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 227 bytes --]

  parent reply	other threads:[~2021-06-13 17:25 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-07  7:09 RISCV porting effort Efraim Flashner
2021-06-07 15:37 ` Christopher Lemmer Webber
2021-06-08 13:43 ` Ludovic Courtès
2021-06-08 22:28   ` Gabriel Wicki
2021-06-10 13:22     ` Efraim Flashner
2021-06-11 21:07     ` Ludovic Courtès
2021-06-10 13:20   ` Efraim Flashner
2021-06-11 22:07     ` Ludovic Courtès
2021-06-18 13:05     ` RISCV porting effort (now in stock @mouser) Gabriel Wicki
2021-06-11 11:16 ` RISCV porting effort Efraim Flashner
2021-06-13 17:24 ` Vagrant Cascadian [this message]
2021-06-14  7:27   ` Efraim Flashner
2021-06-15  1:00     ` Vagrant Cascadian
2021-06-15 12:37       ` Efraim Flashner
2021-06-13 21:21 ` Christopher Baines
2021-06-20 15:37   ` Ludovic Courtès
2022-06-16  1:46     ` Pjotr Prins
2022-06-16 18:12       ` Maxim Cournoyer
2022-06-17 16:08       ` Ludovic Courtès
2022-06-17 22:52         ` Pjotr Prins
2022-06-20  7:45           ` Pjotr Prins
2022-06-22 13:37             ` Ludovic Courtès
2022-06-22 15:19               ` Ekaitz Zarraga
2022-06-28  8:54                 ` Efraim Flashner
2022-06-30 12:01                   ` Ludovic Courtès
2022-07-03  9:07                     ` Efraim Flashner
2022-06-24  6:37               ` Pjotr Prins

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87o8c91xvm.fsf@yucca \
    --to=vagrant@debian.org \
    --cc=efraim@flashner.co.il \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.