executing `/gnu/store/...-guile-3.0.9/bin/guile': Exec format error

  • Open
  • quality assurance status badge
Details
2 participants
  • Josselin Poiret
  • Simon Tournier
Owner
unassigned
Submitted by
Simon Tournier
Severity
normal
S
S
Simon Tournier wrote on 1 Feb 17:25 +0100
(address . bug-guix@gnu.org)
87zfwknoby.fsf@gmail.com
Hi,

Well, on foreign distro, from 8e61e63 I am not able to pull recent
commits. The best seems to show:

Toggle snippet (11 lines)
$ guix describe
Generation 2 déc. 11 2023 10:55:51 (current)
guix 8e61e63
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 8e61e6351510f5665d09c6debc0584b3ed218e73

$ git show --format="%h %s %cd" 8e61e6351510f5665d09c6debc0584b3ed218e73
8e61e63515 gnu: gerbv: Use a source file-name. Mon Dec 11 08:31:26 2023 +0200

Let try the commit bdab356332e391e09d0feafe0fcac9c52388a07d from
December, 25th.

Toggle snippet (6 lines)
$ guix time-machine -q --commit=bdab356332e391e09d0feafe0fcac9c52388a07d -- describe
guix bdab356
repository URL: https://git.savannah.gnu.org/git/guix.git
commit: bdab356332e391e09d0feafe0fcac9c52388a07d

So far, so good!

The descendant of this commit fails:

Toggle snippet (43 lines)
$ git log --format="%H %P %s %cd" | grep bdab356332e391e09d0feafe0fcac9c52388a07d
92227248a616a9555200a48b1e4f1768a462556b bdab356332e391e09d0feafe0fcac9c52388a07d 7722da6fa5422c4fec69d6c8b9536c7d6fc3d326 Merge branch 'master' into mesa-updates Thu Dec 28 21:13:26 2023 -0500
bdab356332e391e09d0feafe0fcac9c52388a07d f7bca895b91c4e12324f34311e312ace2835e0df gnu: curl: Fix test suite on arm platforms. Mon Dec 25 11:36:20 2023 +0200

$ guix time-machine --commit=92227248a616a9555200a48b1e4f1768a462556b -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
Computing Guix derivation for 'x86_64-linux'... |
The following derivations will be built:
/gnu/store/xhb4922x9g0sviadhqdr7b6vdk0023qh-profile.drv
/gnu/store/v4zys8gnghkpp52rs3bqxwg6r76vshhx-guix-92227248a.drv
/gnu/store/174cbd2y89icc5axicw888aczk6rhll4-guix-daemon.drv
/gnu/store/nqx950qnngliir0ljcnvgqjmlv55b07p-guix-command.drv
/gnu/store/cmllz43d758h65z1l1kparaj430nbx99-guix-module-union.drv
/gnu/store/2dlv5iji9awyy78dsrcglhcswa39m3f2-guix-92227248a-modules.drv
/gnu/store/3yz13qns2bmc001alsqiai8q9p113vgj-guix-extra-modules.drv
/gnu/store/bzl3gsx06gikm9rf6ci3kkhyairqjs50-guix-system-tests-modules.drv
/gnu/store/f7dngsf9lnyvl4s6wgmskpigxd54fgnb-guix-cli-modules.drv
/gnu/store/hwwp1qk7ha95axx7f2hgldykanc57az0-guix-core-modules.drv
/gnu/store/5li5ky8vhzk2694h5kn0vnlpm70c851k-guix-core-source.drv
/gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv
/gnu/store/mwh263dzbs45qhpxjjfn3rbnjzc31ql6-guix-packages-modules.drv
/gnu/store/3kkg4137vchrak951qzjq05ncqhi60yw-guix-packages.drv
/gnu/store/n20f4wal7qzmxaaibv9jw173hqny801b-guix-cli-core-modules.drv
/gnu/store/r2jwd32y1zc479ijxm22b9xjfji5z1c8-guix-system-modules.drv
/gnu/store/rf0l8zkcsqh8ymyq331rc3l96gg41lyc-guix-packages-base-modules.drv
/gnu/store/ww55j14pyrxp0fq830q3j91cv6z1x3n0-guix-home-modules.drv
/gnu/store/yr4r9yazb1qycvph04b8ypdv2qiwj5a5-guix-config-modules.drv
/gnu/store/6dg6hla57prkbknfabxy7qa4m3cmmypj-guix-config-source.drv
/gnu/store/82j8g9z2rmba9yvhav24ajkqcr6j4nam-config.scm.drv
/gnu/store/w4gicpx7fs3wg6xw5p0wzv38k67ncyrp-guix-config.drv
/gnu/store/6ahjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv
/gnu/store/1rz6zxv24yir437lr8vahi7bbzxdmqvf-inferior-script.scm.drv
/gnu/store/qw62c8zcfnm93027jriwq1ryw2b5nd4k-profile.drv

building /gnu/store/6ahjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv...
\builder for `/gnu/store/6ahjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv' failed with exit code 1
build of /gnu/store/6ahjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv failed
View build log at '/var/log/guix/drvs/6a/hjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv.gz'.
cannot build derivation `/gnu/store/v4zys8gnghkpp52rs3bqxwg6r76vshhx-guix-92227248a.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/xhb4922x9g0sviadhqdr7b6vdk0023qh-profile.drv': 1 dependencies couldn't be built
guix time-machine: error: build of `/gnu/store/xhb4922x9g0sviadhqdr7b6vdk0023qh-profile.drv' failed

First, the error message:

Toggle snippet (4 lines)
$ zcat /var/log/guix/drvs/6a/hjj7zin3spy9gjplk3qsyhik4750fy-guix-misc.drv.gz
while setting up the build environment: executing `/gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/bin/guile': Exec format error

Second, the failure seems to come from the merged branch:

Toggle snippet (38 lines)
$ guix time-machine --commit=7722da6fa5422c4fec69d6c8b9536c7d6fc3d326 -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
Computing Guix derivation for 'x86_64-linux'... \
The following derivations will be built:
/gnu/store/mhjn8jm97nc8863alc35jdpbv0drkdpv-profile.drv
/gnu/store/43sd6friglx6qdj1rkv9nl1a3y9plbdn-guix-7722da6fa.drv
/gnu/store/8jzzm03xkspskpa52hjh0fy505nlb9cm-guix-command.drv
/gnu/store/3smbhqkh21ljw2w4f1z9g58x80bmgxac-guix-module-union.drv
/gnu/store/nma2852bli2a0wyzmx98k242rq2ga66l-guix-7722da6fa-modules.drv
/gnu/store/4gqfpf0fcv08fhcqcyr5zavc4a879q8c-guix-cli-modules.drv
/gnu/store/5qs8wa9qsj4i51vx8rcm4qz9ibdkw222-guix-config-modules.drv
/gnu/store/iqy2qymhddh4826sig1ssdbd1dlr4ban-guix-config.drv
/gnu/store/wfkw7aprnrc42y91jb282rhdp5s5xngh-guix-config-source.drv
/gnu/store/rkmvr80dnglrvq6ah0yyghiskrqfsv02-config.scm.drv
/gnu/store/6d1152g7wyzvylvvq65rxy6aysgbgb7s-guix-system-modules.drv
/gnu/store/8wdzjq0jz77093h4755zayzdm14hd6i2-guix-cli-core-modules.drv
/gnu/store/bwn5yp501zf3rdwrawmz6hhlb08znccn-guix-packages-modules.drv
/gnu/store/fbj98b377dlkymjsqfj28wggs2hazrx5-guix-home-modules.drv
/gnu/store/hwwp1qk7ha95axx7f2hgldykanc57az0-guix-core-modules.drv
/gnu/store/5li5ky8vhzk2694h5kn0vnlpm70c851k-guix-core-source.drv
/gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv
/gnu/store/mlrawpzjpjch7fym0wyznqmccjz1fc6q-guix-packages-base-modules.drv
/gnu/store/mv783yv2bmd6411ahvp7kiawijbf9p2d-guix-system-tests-modules.drv
/gnu/store/vnyxgs1hlx0lq9dnvn9125kp8hvwc2bg-guix-extra-modules.drv
/gnu/store/x58vrd0wpsj6nzh8w3aiqm480gihlkka-guix-daemon.drv
/gnu/store/z1h9z986p8ixbw0fcv1mfcqq46pk1fcs-guix-misc.drv
/gnu/store/1a54ymhph5v9lj7xs7k4nyr3kichikwg-profile.drv
/gnu/store/zv8kbaqhgafm81qk5aadvxshmqf3vicf-inferior-script.scm.drv

building /gnu/store/z1h9z986p8ixbw0fcv1mfcqq46pk1fcs-guix-misc.drv...
\builder for `/gnu/store/z1h9z986p8ixbw0fcv1mfcqq46pk1fcs-guix-misc.drv' failed with exit code 1
build of /gnu/store/z1h9z986p8ixbw0fcv1mfcqq46pk1fcs-guix-misc.drv failed
View build log at '/var/log/guix/drvs/z1/h9z986p8ixbw0fcv1mfcqq46pk1fcs-guix-misc.drv.gz'.
cannot build derivation `/gnu/store/43sd6friglx6qdj1rkv9nl1a3y9plbdn-guix-7722da6fa.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/mhjn8jm97nc8863alc35jdpbv0drkdpv-profile.drv': 1 dependencies couldn't be built
guix time-machine: error: build of `/gnu/store/mhjn8jm97nc8863alc35jdpbv0drkdpv-profile.drv' failed

And it is similar with recent commit, for instance from January, 25th:

5111915e6afeb507a73a6ebe60e3fef754a3016a gnu: s7: Update to 24.1-0.23a64fa.

Toggle snippet (43 lines)
$ guix time-machine --commit=5111915e6afeb507a73a6ebe60e3fef754a3016a -- describe
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
building /gnu/store/xw3cm9izfq4h7xrgwc9rqpng690s8qd9-compute-guix-derivation.drv...
Computing Guix derivation for 'x86_64-linux'... |
substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
The following derivations will be built:
/gnu/store/5sgcj4fjznnjz8w6rpx17hg97jl4ffmk-profile.drv
/gnu/store/6ganwnh20xw2b5vgnjm7rda4h6dg8d1j-guix-5111915e6.drv
/gnu/store/1wm2dyvsg1fxlv64jcwywljh2400bhxp-guix-misc.drv
/gnu/store/frcir5zjxgad6fc499ilxkl31695brhh-guix-daemon.drv
/gnu/store/q2mihbq6358zjsbznyhqngdx9jwa4b7y-guix-command.drv
/gnu/store/6ldxni1q4mq60cabnxyyc8q1c5k7bs2r-guix-module-union.drv
/gnu/store/jff63mmksq5g42dl5d2mr1yrfjps6psn-guix-5111915e6-modules.drv
/gnu/store/44b60236k5ir59g94lggkvb1ayivpn3g-guix-system-tests-modules.drv
/gnu/store/48nw5lsm6zwgjhvs4b34kxlg4p3212mw-guix-packages-base-modules.drv
/gnu/store/55lr9j3c952j4vganmwdwjgv2nq5kw3c-guix-cli-modules.drv
/gnu/store/cl815vh2i3q1ycxva611vdlpx5inqg0x-guix-config-modules.drv
/gnu/store/f0993qqzqiqp8m58d0qzwavi45gfjif2-guix-config.drv
/gnu/store/ycm5wqlnzhah986sv9fc8i1lswbwb90i-guix-config-source.drv
/gnu/store/f7274faksny5y00ax0p174jyn42asai2-config.scm.drv
/gnu/store/h13xfgg5ihpkfs7ncp9900g1p05k1mnz-guix-cli-core-modules.drv
/gnu/store/nvx83x4xpx2fh8vcm97bm44z6xlrkx1m-guix-extra-modules.drv
/gnu/store/qv5kzk2xkl9y7jl3k31qb97s8qv51vmb-guix-packages-modules.drv
/gnu/store/sff8cnvy2cm6ahn0y5b5q3jksfh8vjrn-guix-system-modules.drv
/gnu/store/yjgynk3fmn7rl66hm1x5xhy785dbqnjz-guix-core-modules.drv
/gnu/store/mwrxy0nsxb5cs59iy6ggagb49xqzlzqn-guix-core-source.drv
/gnu/store/2f0z0x4nqpwgwmrk5qs7ka0p3y2a2gny-config.scm.drv
/gnu/store/z72ngr024n47s1d0sc1pippgzvfim9sa-guix-home-modules.drv
/gnu/store/ggf2api6y7b6hx1z4b9zyzzwrhif8c1a-inferior-script.scm.drv
/gnu/store/n6x7ip80ppi124iq24nqv0zbmzdsrf13-profile.drv

building /gnu/store/1wm2dyvsg1fxlv64jcwywljh2400bhxp-guix-misc.drv...
\builder for `/gnu/store/1wm2dyvsg1fxlv64jcwywljh2400bhxp-guix-misc.drv' failed with exit code 1
build of /gnu/store/1wm2dyvsg1fxlv64jcwywljh2400bhxp-guix-misc.drv failed
View build log at '/var/log/guix/drvs/1w/m2dyvsg1fxlv64jcwywljh2400bhxp-guix-misc.drv.gz'.
cannot build derivation `/gnu/store/6ganwnh20xw2b5vgnjm7rda4h6dg8d1j-guix-5111915e6.drv': 1 dependencies couldn't be built
cannot build derivation `/gnu/store/5sgcj4fjznnjz8w6rpx17hg97jl4ffmk-profile.drv': 1 dependencies couldn't be built
guix time-machine: error: build of `/gnu/store/5sgcj4fjznnjz8w6rpx17hg97jl4ffmk-profile.drv' failed

Hum, is it something on my side?

Cheers,
simon
S
S
Simon Tournier wrote on 1 Feb 17:42 +0100
error while loading shared libraries: /gnu/store/...-guile-3.0.9/lib/libguile-3.0.so.1: file too short
(address . 68874@debbugs.gnu.org)
8734ucm904.fsf@gmail.com
Re,

Another data point.

Toggle snippet (23 lines)
$ guix describe
Generation 2 déc. 11 2023 10:55:51 (current)
guix 8e61e63
repository URL: https://git.savannah.gnu.org/git/guix.git
branch: master
commit: 8e61e6351510f5665d09c6debc0584b3ed218e73

$ guix pull -q -p /tmp/new
Updating channel 'guix' from Git repository at 'https://git.savannah.gnu.org/git/guix.git'...
Building from this channel:
guix https://git.savannah.gnu.org/git/guix.git 7bf8b7c
Computing Guix derivation for 'x86_64-linux'... \
hint: Consider setting the necessary environment variables by running:

GUIX_PROFILE="/tmp/new"
. "$GUIX_PROFILE/etc/profile"

Alternately, see `guix package --search-paths -p "/tmp/new"'.


hint: After setting `PATH', run `hash guix' to make sure your shell refers to `/tmp/new/bin/guix'.

So far, so good! And now the error:

Toggle snippet (4 lines)
$ /tmp/new/bin/guix describe
/gnu/store/vqkjfl6ds3vdvig2x5pkvvzkc3wivrp0-guile-wrapper/bin/guile: error while loading shared libraries: /gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/lib/libguile-3.0.so.1: file too short

Hum, what is wrong?

Cheers,
simon
J
J
Josselin Poiret wrote on 1 Feb 22:16 +0100
87plxfsx4s.fsf@jpoiret.xyz
Hi Simon,

Simon Tournier <zimon.toutoune@gmail.com> writes:

Toggle quote (5 lines)
> --8<---------------cut here---------------start------------->8---
> $ /tmp/new/bin/guix describe
> /gnu/store/vqkjfl6ds3vdvig2x5pkvvzkc3wivrp0-guile-wrapper/bin/guile: error while loading shared libraries: /gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/lib/libguile-3.0.so.1: file too short
> --8<---------------cut here---------------end--------------->8---

File too short sounds like store corruption, can you check whether that
file is empty? Maybe try gc'ing it and retrying?

Best,
--
Josselin Poiret
-----BEGIN PGP SIGNATURE-----

iQHEBAEBCAAuFiEEOSSM2EHGPMM23K8vUF5AuRYXGooFAmW8CkMQHGRldkBqcG9p
cmV0Lnh5egAKCRBQXkC5FhcaitUuDACuEzUHtpMTfn3RuuoJ+p8KMk/szE3SKUbr
e3g+ZNKKowzMHv/351A1ZMfff0082Qiq0MzxUos9H3HNRpMdX1OGh1OM4jptgW3R
B2iIwWCfcu9mhUb8WyEES0aPDtHsb7cBaX+ZXzGLRT0wbh3KSjNTKwq/1DumIbdA
IOmraxAH7E2YE5vTMORHuJUS2MbzOTobyMDjgI9gk8qP/4C1NAHCn8V5i58wsd9x
lYE/yRDyyL1flkotem4xqu34fIpMyoNw1wdMENYXBJPVRFm4dHV93vIXFknVZPYg
W/8EgxKnl9qg91p98qSLyVHBCArKYi0cdKuzo88fWP2McNLvbqTvd+6uJQvv+tv5
z1QlsJGQhVFtpRzcMBQRXpcoFhMoGWBebgfBzxni4yJ3R2l/jpxppTA6+3e+QYBW
cYcjhucaveSyZ7yTnYHjMLfL2+1tb4aiHlnLgfqHNyywdaYqav851e85IkWQlsW5
v5RVqeas2RpLlVX50BOdJJjq8MJd6xg=
=Fn7p
-----END PGP SIGNATURE-----

S
S
Simon Tournier wrote on 2 Feb 01:37 +0100
Re: bug#68874: executing `/gnu/store/...-guile-3.0.9/bin/guile': Exec format error
(name . Josselin Poiret)(address . dev@jpoiret.xyz)(address . 68874@debbugs.gnu.org)
877cjnem5p.fsf_-_@gmail.com
Hi,

On Thu, 01 Feb 2024 at 22:16, Josselin Poiret <dev@jpoiret.xyz> wrote:

Toggle quote (8 lines)
>> --8<---------------cut here---------------start------------->8---
>> $ /tmp/new/bin/guix describe
>> /gnu/store/vqkjfl6ds3vdvig2x5pkvvzkc3wivrp0-guile-wrapper/bin/guile: error while loading shared libraries: /gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/lib/libguile-3.0.so.1: file too short
>> --8<---------------cut here---------------end--------------->8---
>
> File too short sounds like store corruption, can you check whether that
> file is empty? Maybe try gc'ing it and retrying?

Indeed, empty:

Toggle snippet (4 lines)
$ file $(readlink -f /gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/lib/libguile-3.0.so.1)
/gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9/lib/libguile-3.0.so.1.6.0: empty

However, I am not able to remove the item. I mean: I have tried many
operations as “guix gc”, “guix gc --verify” with ’repair’ and
’contents’, remove some part of ~/.cache/guix and then “guix gc”, remove
the complete ~/.cache/guix and then “guix gc”, rebuild the derivation
with --check, etc.

And the file is still empty. Arf, I spent some time to find which was
retained it.

Well, I did nothing special for that corruption. And once I had it, the
process for recovering is not straightforward. Somehow, it misses
helpers that maps item to profile.

For instance, in order to find the culprit retaining the item, I did

Toggle snippet (11 lines)
$ guix gc --referrers /gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9
/gnu/store/1gd9nsy4cps8fnrd1avkc9l01l7ywiai-guile-3.0.9
/gnu/store/50vkm2fkk3aij8jc92phb3ahapn776m8-guix-command
/gnu/store/fd744pmbhzq1avpjjsmfiasp7yqdmiwy-guix-daemon
/gnu/store/vqkjfl6ds3vdvig2x5pkvvzkc3wivrp0-guile-wrapper

$ guix gc --referrers /gnu/store/50vkm2fkk3aij8jc92phb3ahapn776m8-guix-command
/gnu/store/fd744pmbhzq1avpjjsmfiasp7yqdmiwy-guix-daemon
/gnu/store/icp4z3cxp0fibsm4j887nz8k56jc1jgi-guix-7bf8b7c33

then ’grep’ the term ’7bf8b7c33’ inside /var/guix/profiles/per-user.

Well, it was retained because I did switch-generation. Anyway.

Hum, it could be nice if instead:

guix gc: error: cannot delete path `/gnu/store/…' since it is still alive

it would also point the “profile“ (or profiles) that makes it alive.

Cheers,
simon
?