If I do this on a Linux x86_64 host:
$ swiftly install --use 6.4.x-snapshot
$ cd swift-sdk-generator
$ swift run swift-sdk-generator make-linux-sdk --swift-branch swift-6.4.x-branch --swift-version 6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a --target aarch64-unknown-linux-gnu
$ swift sdk install ./Bundles/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64.artifactbundle
$ swift build --swift-sdk 6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64
The build fails with some fun errors:
Building for debugging...
/usr/bin/x86_64-linux-gnu-ld.bfd: unrecognised emulation mode: aarch64linux
Supported emulations: elf_x86_64 elf_i386 elf32_x86_64 elf_iamcu i386pep i386pe
~/swift-sdk-generator/.build/checkouts/swift-atomics/Package.swift: _AtomicsShims: clang: error: linker command failed with exit code 1 (use -v to see invocation)
error: Ld ~/swift-sdk-generator/.build/out/Products/Debug-linux-aarch64/_AtomicsShims.o normal failed with a nonzero exit code. Command line: cd ~/swift-sdk-generator/.build/checkouts/swift-atomics
/home/xtremek/.local/share/swiftly/toolchains/6.4.x-snapshot-2026-07-23/usr/bin/clang -target aarch64-unknown-linux-gnu -r --sysroot /home/xtremek/.swiftpm/swift-sdks/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64.artifactbundle/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64/aarch64-unknown-linux-gnu/ubuntu-jammy.sdk -resource-dir /home/xtremek/.swiftpm/swift-sdks/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64.artifactbundle/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64/aarch64-unknown-linux-gnu/ubuntu-jammy.sdk/usr/lib/swift/clang -O0 -w @~/swift-sdk-generator/.build/out/Intermediates.noindex/swift-atomics.build/Debug-linux-aarch64/_AtomicsShims-t.build/Objects-normal/aarch64/_AtomicsShims.LinkFileList -nostdlib -o ~/swift-sdk-generator/.build/out/Products/Debug-linux-aarch64/_AtomicsShims.o
[242 / 874] _AtomicsShims
error: Build failed
Since Swift 6.4 defaults to the swiftbuild build system it appears to not be working properly when cross-compiling. If we use the native build system, things compile just as before.
If I do this on a Linux x86_64 host:
$ swiftly install --use 6.4.x-snapshot $ cd swift-sdk-generator $ swift run swift-sdk-generator make-linux-sdk --swift-branch swift-6.4.x-branch --swift-version 6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a --target aarch64-unknown-linux-gnu $ swift sdk install ./Bundles/6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64.artifactbundle $ swift build --swift-sdk 6.4.x-DEVELOPMENT-SNAPSHOT-2026-07-23-a_ubuntu_jammy_aarch64The build fails with some fun errors:
Since Swift 6.4 defaults to the
swiftbuildbuild system it appears to not be working properly when cross-compiling. If we use thenativebuild system, things compile just as before.