Test failures in binfmt emulated builds

  • Open
  • quality assurance status badge
Details
One participant
  • Greg Hogan
Owner
unassigned
Submitted by
Greg Hogan
Severity
normal
G
G
Greg Hogan wrote on 14 Mar 2023 20:19
(address . bug-guix@gnu.org)
CA+3U0Znvd2+1QnOuXUBeVdnuQiBMj4jL4LOaZg-_p4+MpVuU3w@mail.gmail.com
The following emulated build using binfmt should work according to the
documentation example at

$ 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
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.
---
Toggle quote (2 lines)
> ./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
?