Subject: bug#64774: RISC-V 64 Python 3.10.7 build failure when building git 2.41.0 @ commit eb12f3f

From: Simon Tournier <[email-masked]>
Date: Wed, 20 Sep 2023 08:49:30 +0200

Hi,

On Fri, 21 Jul 2023 at 15:06, Juliana Sims <[email-masked]> wrote:

> The command `guix shell -s riscv64-linux -Kc $(($(nproc)/2)) git` fails 
> due to test failures while building Python 3.10.7. Notably, creating a 
> shell with just Python (so, swapping "python" for "git" in the command) 
> works fine.

[...]

>         (commit
>           "eb12f3fd8bee99920118ec802ffbac8f1ab676b9")

On my machine running x86_64, it fails about
/gnu/store/…-python-toolchain-3.10.7.drv with,

--8<---------------cut here---------------start------------->8---
@ unsupported-platform
/gnu/store/5sxjc5i6cnk9fgxv9vxh7736vvg46z1x-python-toolchain-3.10.7.drv
riscv64-linux
while setting up the build environment: a `riscv64-linux' is required to
build `/gnu/store/5sxjc5i6cnk9fgxv9vxh7736vvg46z1x-python-toolchain-3.10.7.drv',but I am a `x86_64-linux'
--8<---------------cut here---------------end--------------->8---

If I run,

    $ guix time-machine -q --commit=eb12f3fd8bee99920118ec802ffbac8f1ab676b9 \
         -- build -s riscv64-linux git --no-grafts -d
    /gnu/store/416hn85wavavmbhrfgrshq5fvvjgxnb2-git-2.41.0.drv

Then I open the derivation, I read:

   ,("/gnu/store/bwkklzsf4hrrmwqsy50837zyrl86bhm0-python-3.10.7.drv",["out"])

And this is substituted for me.  This python-toolchain is dragged by
this chain:

--8<---------------cut here---------------start------------->8---
$ guix time-machine -q --commit=eb12f3fd8bee99920118ec802ffbac8f1ab676b9 \
       -- graph --path -s riscv64-linux -t derivation                    \
       /gnu/store/416hn85wavavmbhrfgrshq5fvvjgxnb2-git-2.41.0.drv        \
       /gnu/store/5sxjc5i6cnk9fgxv9vxh7736vvg46z1x-python-toolchain-3.10.7.drv
/gnu/store/416hn85wavavmbhrfgrshq5fvvjgxnb2-git-2.41.0.drv
/gnu/store/bpn15j7zp90pxmjfhjb8byjnp95ymd7z-libsecret-0.20.5.drv
/gnu/store/h8ndn2j5vczzj6rph42ph3j5k87cy9xm-python-pygobject-3.42.2.drv
/gnu/store/6ghdpirfri9avcvm9617zgqv169hkphl-python-tomli-2.0.1.drv
/gnu/store/5sxjc5i6cnk9fgxv9vxh7736vvg46z1x-python-toolchain-3.10.7.drv
--8<---------------cut here---------------end--------------->8---

Well, this python-toolchain depends on
/gnu/store/7rihv7x816k38gkknnkaj9pdrxivrqcz-python-3.10.7.drv which is
substituted for me.

If I read correctly, you reported
/gnu/store/ihv7x816k38gkknnkaj9pdrxivrqcz-python-3.10.7.drv.gz for the
name of the derivations which failed for you.  But I do not see it,

--8<---------------cut here---------------start------------->8---
$ guix time-machine -q --commit=eb12f3fd8bee99920118ec802ffbac8f1ab676b9\
       -- graph -s riscv64-linux -t derivation git \
       | grep label | grep python-3.10             \
       | cut -f1 -d'['
 "/gnu/store/bwkklzsf4hrrmwqsy50837zyrl86bhm0-python-3.10.7.drv"
 "/gnu/store/mb4l6l8q8s4b1lknxsr3zsd8i6scgf61-python-3.10.7-builder"
 "/gnu/store/7rihv7x816k38gkknnkaj9pdrxivrqcz-python-3.10.7.drv"
 "/gnu/store/5i55gbh89dfmk6n1qcz3fn2h14hg38pv-python-3.10.7-builder"
--8<---------------cut here---------------end--------------->8---

Hum, I do not know where does come from the Python which fails for you?

Cheers,
simon