GNU bug report logs - #44952
%current-target-system is #f for packages in the system profile, during system cross-compilation

Previous Next

Package: guix;

Reported by: Mathieu Othacehe <othacehe <at> gnu.org>

Date: Sun, 29 Nov 2020 19:49:01 UTC

Severity: normal

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #10 received at 44952-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Mathieu Othacehe <othacehe <at> gnu.org>
Cc: 44952-done <at> debbugs.gnu.org
Subject: Re: bug#44952: Guix cross-compilation is broken.
Date: Tue, 01 Dec 2020 00:12:24 +0100
Hi!

Mathieu Othacehe <othacehe <at> gnu.org> skribis:

> When I pushed this patchset[1], I didn't anticipate that Avahi depends
> on glib which doesn't cross-compile. To fix the situation, I pushed
> d9f05c70a6af1087de1717ff20036efa1afef5fb and
> 35a32fefb4695442265809805145b7a262ae4988.
>
> While, it now allows to build and cross-build Guix, there's still an
> issue when evaluating the "guix-master" specification with the CI.
> It looks like "%current-target-system" doesn't have the expected value
> in the propagated-inputs.

One way to reproduce it is:

--8<---------------cut here---------------start------------->8---
$ ./pre-inst-env guix build -e '((@ (gnu system image) system-image) (@ (gnu system images hurd) hurd-barebones-qcow2-image))' -n --no-grafts
guix build: error: gnu/packages/glib.scm:181:2: glib <at> 2.62.6: build system `meson' does not support cross builds
--8<---------------cut here---------------end--------------->8---

or:

--8<---------------cut here---------------start------------->8---
scheme@(guile-user)> ,use(gnu system images hurd)
scheme@(guile-user)> ,use(gnu image)
scheme@(guile-user)> ,use(guix)
scheme@(guile-user)> ,use(guix grafts)
scheme@(guile-user)> (%graft? #f)
$2 = #t
scheme@(guile-user)> ,use(gnu system image)
scheme@(guile-user)> (with-store s  (run-with-store s (lower-object (system-image hurd-barebones-qcow2-image))))
ice-9/boot-9.scm:1669:16: In procedure raise-exception:
ERROR:
  1. &package-cross-build-system-error: #<package glib <at> 2.62.6 gnu/packages/glib.scm:181 7f986f1ea780>

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
--8<---------------cut here---------------end--------------->8---

The problem here is that, when populating in ‘packages->manifest’,
called from ‘packages->profile-entry’ in (gnu services),
(%current-target-system) is #false.

This is fixed by commit 07a33b1d21e240781072352f93206cfdc765f907.

Sorry that this spoiled the pleasure of merging service discovery
support!

Thanks,
Ludo’.




This bug report was last modified 4 years and 252 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.