Cross compiling with snapcraft

Hi all! Have i misunderstood the --target-arch flag? I’m trying to cross compile my snap

$ snapcraft --target-arch=armhf`
Setting target machine to 'armhf'`
...
Snapped helm_3.0.1_amd64.snap

Is it just the output name that’s wrong, or is that not actually cross compiling?

Unfortunately cross-compiling is not really supported with --target-arch anymore in modern snapcraft. Recommended option is to use remote-build available in candidate channel of snapcraft AFAIK. See https://snapcraft.io/docs/remote-build

1 Like

That’s just as good, thanks!

independently of what @ijohnson said above, the following works for my actual cross buildable snaps:

architectures:
  - build-on: amd64
    run-on: armhf 

but these are typically either kernels or gadgets (bootloaders) that are from ground up designed for cross compilation without needing dependencies in the target arch format … note that this works without --target-arch=