Subject: bug#62192: closed (Re: bug#62192: Test failures in binfmt emulated builds)

From: [email-masked] (GNU bug Tracking System)
Date: Mon, 03 Jun 2024 00:28:02 +0000

Your bug report

#62192: Test failures in binfmt emulated builds

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
62192: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62192
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#62192: Test failures in binfmt emulated builds
From: Maxim Cournoyer <[email-masked]>
To: Greg Hogan <[email-masked]>
Cc: [email-masked]
Date: Sun, 02 Jun 2024 20:26:21 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Greg,

Greg Hogan <[email-masked]> writes:

> The following emulated build using binfmt should work according to the
> documentation example at
> https://guix.gnu.org/manual/en/html_node/Native-Builds.html
>
> $ uname -m
> x86_64
>
>
> The package was previously built on an aarch64 offload machine:
>
> $ file $(guix build --system=aarch64-linux hello)/bin/hello
> /gnu/store/s2qnbdlrwlx47h5p6rxlylny1259srmj-hello-2.12.1/bin/hello:
> ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically
> linked, interpreter
> /gnu/store/gfjp8gfv4xxschbaxvldpigadfwqazhw-glibc-2.33/lib/ld-linux-aarch64.so.1,
> for GNU/Linux 2.6.32, stripped
>
>
> Successfully executed using binfmt emulation:
>
> $ $(guix build --system=aarch64-linux hello)/bin/hello
> Hello, world!
>
>
> A locally emulated check build fails during the test phase:
>
> $ guix describe
> Generation 35 Mar 13 2023 13:37:24 (current)
>   guix 1ed227d
>     repository URL: https://git.savannah.gnu.org/git/guix.git
>     branch: master
>     commit: 1ed227d7952af48efe50a2f6c9537e17c356daa1
>
> $ guix build --check --system=aarch64-linux --verbosity=1 hello
> The following derivation will be built:
>   /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv
>
> building /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv...
> | 'check' phasebuilder for
> `/gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv' failed
> with exit code 1
> build of /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv failed
> View build log at
> '/var/log/guix/drvs/sg/9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv.gz'.
> guix build: error: build of
> `/gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv' failed
>
>
> $ zcat /var/log/guix/drvs/sg/9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv.gz
> [...]
> Test suite failed, dumping logs.
>
> --- ./test-suite.log --------------------------------------------------------
>
> ========================================
>    GNU Hello 2.12.1: ./test-suite.log
> ========================================
>
> # TOTAL: 7
> # PASS:  4
> # SKIP:  1
> # XFAIL: 0
> # FAIL:  2
> # XPASS: 0
> # ERROR: 0
>
> .. contents:: :depth: 2
>
> FAIL: tests/atexit-1
> ====================
>
> FAIL tests/atexit-1 (exit status: 1)
>
> SKIP: tests/greeting-2
> ======================
>
> ./tests/greeting-2: Skipping test: not a full moon night
> SKIP tests/greeting-2 (exit status: 77)
>
> FAIL: tests/operand-1
> =====================

This kind of problem is really a bug/limitation in QEMU.  I'd suggest
forwarding this report to them if you'd like to have it resolved.

Closing.

-- 
Thanks,
Maxim

Subject: Test failures in binfmt emulated builds
From: Greg Hogan <[email-masked]>
To: [email-masked]
Date: Tue, 14 Mar 2023 15:19:36 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

The following emulated build using binfmt should work according to the
documentation example at
https://guix.gnu.org/manual/en/html_node/Native-Builds.html

$ uname -m
x86_64

The package was previously built on an aarch64 offload machine:

$ file $(guix build --system=aarch64-linux hello)/bin/hello
/gnu/store/s2qnbdlrwlx47h5p6rxlylny1259srmj-hello-2.12.1/bin/hello:
ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically
linked, interpreter
/gnu/store/gfjp8gfv4xxschbaxvldpigadfwqazhw-glibc-2.33/lib/ld-linux-aarch64.so.1,
for GNU/Linux 2.6.32, stripped

Successfully executed using binfmt emulation:

$ $(guix build --system=aarch64-linux hello)/bin/hello
Hello, world!

A locally emulated check build fails during the test phase:

$ guix describe
Generation 35 Mar 13 2023 13:37:24 (current)
  guix 1ed227d
    repository URL: https://git.savannah.gnu.org/git/guix.git
    branch: master
    commit: 1ed227d7952af48efe50a2f6c9537e17c356daa1

$ guix build --check --system=aarch64-linux --verbosity=1 hello
The following derivation will be built:
  /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv

building /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv...
| 'check' phasebuilder for
`/gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv' failed
with exit code 1
build of /gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv failed
View build log at
'/var/log/guix/drvs/sg/9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv.gz'.
guix build: error: build of
`/gnu/store/sg9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv' failed

$ zcat /var/log/guix/drvs/sg/9mpl4nf7j2w8bmv5q4725gpirhi225-hello-2.12.1.drv.gz
[...]
Test suite failed, dumping logs.

--- ./test-suite.log --------------------------------------------------------

========================================
   GNU Hello 2.12.1: ./test-suite.log
========================================

# TOTAL: 7
# PASS:  4
# SKIP:  1
# XFAIL: 0
# FAIL:  2
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: tests/atexit-1
====================

FAIL tests/atexit-1 (exit status: 1)

SKIP: tests/greeting-2
======================

./tests/greeting-2: Skipping test: not a full moon night
SKIP tests/greeting-2 (exit status: 77)

FAIL: tests/operand-1
=====================

1,2c1,2
< hello: extra operand: first
< Try 'hello --help' for more information.
---
> ./hello: extra operand: first
> Try './hello --help' for more information.
FAIL tests/operand-1 (exit status: 1)

error: in phase 'check': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("check" "-j"
"2") exit-status: 2 term-signal: #f stop-signal: #f>
phase `check' failed after 15.0 seconds
command "make" "check" "-j" "2" failed with status 2