patchelf fails on i386 vscode
Metadata
Current evaluation
The i386 VS Code build hit a patchelf 0.9 ELF underrun; Snapcraft later changed its Go ELF handling, but the Launchpad issue remains open.
Suggested action: close resolved
Reason: Commit e39d2404c (snapcraft#2519), titled "go plugin, elf: use patchelf 0.10 and relink dynamic go binaries," directly addresses the reported .note.go.buildid stripping and address-space underrun. The report also identifies the exact binary, patchelf command, and exit code, so it can be closed as resolved.
Evaluated by: mr-cal-bot
Impact:
30
Quick Win:
9
Complexity:
55
Confidence:
86
Actionability:
70
Issue body
https://launchpadlibrarian.net/393792896/buildlog_snap_ubuntu_xenial_i386_8530e5f76cb0f52c411b1e115ff18a11-xenial_BUILDING.txt.gz
Seems the i386 build of vscode hasn't built for a while due to patchelf failure.
Staging electron-launch
Staging vscode
Priming electron-launch
Priming vscode
virtual address space underrun!
Failed to update '/build/vscode/prime/usr/share/code/code'. Retrying after stripping the .note.go.buildid from the elf file.
virtual address space underrun!
An attempt to patch '/build/vscode/prime/usr/share/code/code' so that it would work correctly in diverse environments was made and failed. To disable this behavior set `build-attributes: [no-patchelf]` for the part.
'/build/vscode/prime/usr/share/code/code' cannot be patched to function properly in a classic confined snap: /usr/bin/patchelf --set-interpreter /snap/core/current/lib/ld-linux.so.2 --force-rpath --set-rpath $ORIGIN/lib/:$ORIGIN/../../lib/i386-linux-gnu:$ORIGIN/../../../lib/i386-linux-gnu:$ORIGIN:/snap/core/current/usr/lib/i386-linux-gnu:/snap/core/current/lib/i386-linux-gnu /tmp/tmpk1puj0w0 failed with exit code 1.
'patchelf 0.9' may be too old. A newer version of patchelf may be required.
Try adding the `after: [patchelf]` and a `patchelf` part that would filter out files from prime `prime: [-*]` or `build-snaps: [patchelf/latest/edge]` to the failing part in your `snapcraft.yaml` to use a newer patchelf.
Build failed
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 229, in run
self.build()
File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 218, in build
env=env)
File "/usr/lib/python2.7/dist-packages/lpbuildd/target/build_snap.py", line 75, in run_build_command
return self.backend.run(args, env=full_env, **kwargs)
File "/usr/lib/python2.7/dist-packages/lpbuildd/target/lxd.py", line 460, in run
subprocess.check_call(cmd, **kwargs)
File "/usr/lib/python2.7/subprocess.py", line 541, in check_call
raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '['lxc', 'exec', 'lp-xenial-i386', '--env', 'LANG=C.UTF-8', '--env', 'SHELL=/bin/sh', '--env', 'SNAPCRAFT_BUILD_INFO=1', '--env', 'SNAPCRAFT_IMAGE_INFO={"build_url": "https://launchpad.net/~build.snapcraft.io/+snap/8530e5f76cb0f52c411b1e115ff18a11-xenial/+build/355956"}', '--env', 'http_proxy=http://10.10.10.1:8222/', '--env', 'https_proxy=http://10.10.10.1:8222/', '--env', 'GIT_PROXY_COMMAND=/usr/local/bin/snap-git-proxy', '--', '/bin/sh', '-c', 'cd /build/vscode && linux32 snapcraft']' returned non-zero exit status 2
Revoking proxy token...
RUN: /usr/share/launchpad-buildd/slavebin/in-target scan-for-processes --backend=lxd --series=xenial --arch=i386 SNAPBUILD-355956
Scanning for processes to kill in build SNAPBUILD-355956
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha |
Impact:
30
Quick Win:
9
Complexity:
55
Confidence:
86
Actionability:
70
|
close resolved | The i386 VS Code build hit a patchelf 0.9 ELF underrun; Snapcraft later changed its Go ELF handling, but the Launchpad issue remains open. | |
| stealth/space-bunny-alpha |
Impact:
44
Quick Win:
9
Complexity:
67
Confidence:
79
Actionability:
64
|
keep open | PatchELF 0.9 underruns while rewriting the i386 VS Code ELF; Snapcraft edge/core18 reproduced the failure, but no verified fix or regression test is linked. | |
| qwen/qwen3.6-35b-a3b |
Impact:
20
Quick Win:
6
Complexity:
30
Confidence:
60
Actionability:
40
|
close stale | patchelf fails on i386 vscode snap build with virtual address space underrun; issue is 8+ years old with no maintainer response | |
| qwen/qwen3.8-27b |
Impact:
30
Quick Win:
14
Staleness:
95
Complexity:
55
Confidence:
60
Support Request:
25
|
close stale | i386 vscode snap build fails because patchelf 0.9 cannot patch the 32-bit ELF (virtual address space underrun); no maintainer response, unlabelled, ~7.5 years old. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
98
Complexity:
20
Confidence:
90
Support Request:
10
|
close stale | Build failure on i386 due to patchelf 0.9 address space underrun during snapcraft packaging. Issue is over 7 years old with no activity. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
100
Complexity:
20
Confidence:
95
Support Request:
0
|
close stale | patchelf fails on i386 vscode build due to virtual address space underrun. Issue is 2832 days old, inactive for 2652 days, and likely obsolete due to age and architecture deprecation. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
98
Complexity:
15
Confidence:
95
Support Request:
10
|
close stale | vscode snap build fails on i386 due to patchelf 0.9 virtual address space underrun. Inactive for over 7 years with no maintainer response. Likely obsolete due to outdated toolchain and deprecated i386 support. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcraft#2519
(confidence 88%)
Commit e39d2404c upgrades to patchelf 0.10 and relinks dynamic Go binaries, matching this build-ID and ELF-patching failure.
-
Related To:
snapcraft#1798
(confidence 82%)
Commit fa8b7b174 added stripping of .note.go.buildid, but the report says that retry still produced an underrun.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1669 patchelf with ld-linux from the future | snapcraft | closed | Resolved by commit bdaf0b7f1, which added Snapcraft handling for PatchELF and ELF files when the built glibc/linker does not match the base. | |
| #1753995 patchelf warning / binary segfaults | snapcraft (launchpad) | open | PatchELF corrupted Go-built Telegraf classic snaps into runtime segfaults; no-patchelf avoided the crash, but a 2019 Snapcraft 3.8 reproduction remains unverified on current code. |