← Back to issue list

snapcraft in edge channel (2.39.2+git46.c22d7e2) fails to cross-compile kernel

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1757094
Type
issue
State
closed
Author
~alfonsosanchezbeato
Labels
—
Created
Updated
Closed

Current evaluation

Cross-compile priming was fixed by snapcore/snapcraft#2012, merged as eae356003, skipping ELF dependency and linker checks for non-app snaps such as kernel snaps.

Resolution: closed resolved

Reason: PR #2012 was merged in commit eae356003. It limited ELF/libc checks and patching to app-type snaps, preventing kernel-snap firmware priming from failing linker detection.

Evaluated by: mr-cal-bot

No scores available.

Issue body

Cross-compiling a kernel snap using snapcraft in edge channel fails. Installing the one in the stable channel works though. This is in artful. $ /snap/bin/snapcraft --target-arch=armhf Setting target machine to 'armhf' Cross compiling kernel target 'arm' Skipping pull firmware (already ran) Skipping build firmware (already ran) Skipping stage firmware (already ran) Skipping pull kernel (already ran) Skipping build kernel (already ran) Skipping stage kernel (already ran) Priming firmware Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ath6k/AR6004/hw3.0/abtfilt-sf' Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ath10k/Qcmbr-hfp' Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ec21/quectel-CM-hf' Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ec21/quectel-CM-sf' Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ath10k/Qcmbr-sfp' Unable to determine library dependencies for '/home/abeato/src/tillamook/linux/prime/firmware/ath6k/AR6004/hw3.0/abtfilt-hf' Cannot find the linker to use for the target base 'core'. Please verify that the linker exists at the expected path '/snap/core/current/lib/ld-linux-armhf.so.3' and try again. If the linker does not exist contact the author of the base (run `snap info core` to get information for this base). $ snap info snapcraft name: snapcraft summary: easily create snaps publisher: canonical contact: <email address hidden> license: unknown description: | Snapcraft aims to make upstream developers' lives easier and as such is not a single toolset, but instead is a collection of tools that enable the natural workflow of an upstream to be extended with a simple release step into Snappy enabled system. snap-id: vMTKRaLjnOJQetI78HjntT37VuoyssFE commands: - snapcraft tracking: edge installed: 2.39.2+git46.c22d7e2 (1309) 43MB classic refreshed: 2018-03-20 05:09:48 +0100 CET channels: stable: 2.39.2 (1177) 46MB classic candidate: ↑ beta: ↑ edge: 2.39.2+git46.c22d7e2 (1309) 43MB classic

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Cross-compile priming was fixed by snapcore/snapcraft#2012, merged as eae356003, skipping ELF dependency and linker checks for non-app snaps such as kernel snaps.
stealth/space-bunny-alpha — closed resolved Edge snapcraft wrongly ran ELF/linker checks on the kernel snap; fixed by PR #2012 (commit eae356003) limiting elf checking and patching to type: app snaps, clearing LP #1757094.
stealth/space-bunny-alpha — closed stale Snapcraft edge failed to cross-compile an armhf kernel because the core linker was missing; stable worked, but no fix, rejection, or superseding change is recorded.
qwen/qwen3.6-35b-a3b — — Closed without comments. The cross-compilation failure was likely resolved in later stable releases or abandoned due to inactivity. The stable channel served as a functional workaround.
qwen/qwen3.6-35b-a3b — — Closed without resolution. Cross-compilation failed due to missing target linker and library dependency errors in the edge channel. Issue appears abandoned or resolved by switching to the stable channel.

Update history

Date Change
created

Related work

  • Likely Fixed By: snapcraft#2012 (confidence 100%)

    The merged PR restricted ELF processing to app snaps and was cited in the issue's final maintainer comment.

Related issues

Issue Project State Summary Similarity
#5219 Snapcraft unable to compile ARM64 kernel snapcraft open ARM64 core20 kernel cross-builds fail while fetching snapd:arm64; a minimal apt reproducer exists, but the report has no maintainer triage or release mapping.
75%
#1569734 snapcraft kernel: Failed to download 'ubuntu-core/edge' snapcraft (launchpad) closed Store downloading was fixed by merged PR snapcraft#452 (commit f5a1bf971), allowing the kernel plugin to download ubuntu-core/edge successfully.
74%
#1838098 snapcraft prime fails if it finds an invalid ELF file snapcraft (launchpad) closed Snapcraft now skips invalid ELF files during priming; PR #2663 was merged in commit 89490853e.
71%
#1570835 snapcraft 2.8 fails on s390x snapcraft (launchpad) closed Snapcraft 2.8's missing s390x handling was fixed by ubuntu-core/snapcraft PR #461, merged as commit d3c242fa2.
71%
#1943603 snapcraft --target-arch=i386 does not build i386 images, because core20 does not support i386 and yet the build starts and wastes time snapcraft (launchpad) open Legacy Snapcraft accepted an unsupported core20/i386 target, wasted build time, and produced an amd64 snap; current validation excludes i386 and drops core20.
71%
#1769551 snapcraft 2.42 not working in trusty armhf snapcraft (launchpad) closed Snapcraft 2.42's armhf startup failure was fixed by merged PR #2126 (commit 5230460c7); the reporter confirmed it in edge rev 1561.
71%
#1752766 Snapcraft fails to prime part containg device files snapcraft (launchpad) closed Merged PR #1976 (commit ef3309f3c) fixed device-node priming by limiting ELF inspection to regular files and symlinks.
70%