fix: filter unsupported AArch64 Cortex-A53 linker arg - #452
Merged
Conversation
messense
approved these changes
Jun 10, 2026
This was referenced Jun 11, 2026
badboy
added a commit
to mozilla/glean
that referenced
this pull request
Aug 21, 2026
We're using an older maturin, which pulls in an older Zig build, which doesn't filter a certain parameter (rust-cross/cargo-zigbuild#452), which breaks the build. Rust 1.97 however is fine, for now.
younsl
added a commit
to younsl/o
that referenced
this pull request
Aug 21, 2026
…uilds rustc 1.98 passes --fix-cortex-a53-843419 to the linker for aarch64-linux targets, which zig rejects. cargo-zigbuild 0.23.0 filters the flag (rust-cross/cargo-zigbuild#452). Signed-off-by: younsl <cysl@kakao.com>
zanieb
added a commit
to astral-sh/uv
that referenced
this pull request
Aug 21, 2026
ARM64-musl Docker builds fail with Rust 1.98 because the target now [passes `--fix-cortex-a53-843419`](rust-lang/rust#155453), which [`zig cc` rejects](rust-cross/cargo-zigbuild#451). Require and lock `cargo-zigbuild` 0.23.0, which includes the [upstream change to filter this flag](rust-cross/cargo-zigbuild#452). Keep the existing Zig linker, libc, startup objects, and stack defaults. This restores build compatibility without enabling the new Cortex-A53 erratum mitigation. --------- Co-authored-by: zaniebot <242828183+zaniebot@users.noreply.github.com> Co-authored-by: Zanie Blue <contact@zanie.dev> Co-authored-by: Zanie Blue <zanie@openai.com>
progamesigner
added a commit
to progamesigner/muninn
that referenced
this pull request
Aug 23, 2026
Bump the cargo-zigbuild builder image from 0.20.0 to 0.23.0. Rust 1.98.0 (stable since 2026-08-20, picked up automatically by the floating channel in rust-toolchain.toml) passes --fix-cortex-a53-843419 to the linker for aarch64 targets, which the zig linker in 0.20.0 rejects: "unsupported linker arg: --fix-cortex-a53-843419". This broke only the arm64 leg of the multi-arch image; amd64 and every release binary built fine. cargo-zigbuild filters the argument as of rust-cross/cargo-zigbuild#452, released in 0.23.0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FpZ1EphkgW3sY2fnZJP2t2
henry40408
added a commit
to henry40408/noadd
that referenced
this pull request
Aug 23, 2026
…in (#245) The 1.98 toolchain bump (#241) is green on every CI check and still breaks the image: `docker.yml` fires on tags and pushes to `main`, not on pull requests, so the first build to run it was v0.30.1's — and only the arm64 leg failed. Rust 1.98 passes `--fix-cortex-a53-843419` to the linker for aarch64 targets (rust-lang/rust#155453). Zig's linker rejects unknown arguments outright, so the wrapper cargo-zigbuild 0.22.3 generates fails with `unsupported linker arg: --fix-cortex-a53-843419` and `noadd` never links for aarch64-unknown-linux-musl. amd64 is unaffected — the argument is only emitted for aarch64. cargo-zigbuild 0.23.0 filters the argument in `filter_linker_arg` (rust-cross/cargo-zigbuild#452), alongside the two other arguments it already dropped for the same reason. The rest of the 0.22.3..0.23.0 range is a cargo-dist config update, a cargo-options bump, and dependabot commits. Zig stays on 0.14.1: the fix is in the wrapper, not the linker, and 0.15+ still brings the libc++-19 bindgen requirement this pin exists to avoid. Claude-Session: https://claude.ai/code/session_01RLF7TP74kER7Wcx8Th33qc Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
brycedrennan
added a commit
to blackthorn-interstellar/pypiron
that referenced
this pull request
Aug 23, 2026
Rust 1.98 (stable since 2026-08-18) started passing `-Wl,--fix-cortex-a53-843419` on every aarch64-linux target (rust-lang/rust#155453). zig 0.16's cc driver rejects it outright ("error: unsupported linker arg"), so the arm64 Docker cross-build died linking crc-fast. cargo-zigbuild filters the flag as of 0.23.0 (rust-cross/cargo-zigbuild#452), so pin that — and move taiki-e/install-action to v2.86.6, the first release whose manifest carries 0.23.0 (v2.82.0 tops out at 0.22.3 and would silently fall back to cargo-binstall). Reproduced locally with rustc 1.98.0 + zig 0.16.0: 0.22.3 fails on crc-fast with the exact CI error, 0.23.0 links a valid aarch64 ELF. - h2 0.4.15 -> 0.4.18 clears RUSTSEC-2026-0258; `cargo audit` is green again.
clalancette
added a commit
to foxglove/mcap
that referenced
this pull request
Aug 24, 2026
Rust 1.98 started passing --fix-cortex-a53-843419 to the linker for aarch64 targets, and zig's cc wrapper rejects linker args it does not recognize, so the pinned cargo-zigbuild 0.22.3 now fails to link the CLI for aarch64-unknown-linux-musl with "unsupported linker arg". cargo-zigbuild 0.23.0 filters the flag in its zig wrapper (rust-cross/cargo-zigbuild#452). 0.23.0 is also the newest release in the pinned taiki-e/install-action's manifest, so newer releases are not installable without also bumping that action. The zig pin itself is unaffected. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
clalancette
added a commit
to foxglove/mcap
that referenced
this pull request
Aug 24, 2026
### Changelog None. ### Docs None. ### Description Rust 1.98 started passing --fix-cortex-a53-843419 to the linker for aarch64 targets, and zig's cc wrapper rejects linker args it does not recognize, so the pinned cargo-zigbuild 0.22.3 now fails to link the CLI for aarch64-unknown-linux-musl with "unsupported linker arg". cargo-zigbuild 0.23.0 filters the flag in its zig wrapper (rust-cross/cargo-zigbuild#452); bump to the latest release. The zig pin itself is unaffected. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
XuQianJin-Stars
added a commit
to XuQianJin-Stars/tencent-goosefs-rust-sdk
that referenced
this pull request
Aug 25, 2026
The manylinux aarch64 wheel stopped linking in CI:
error: unsupported linker arg: --fix-cortex-a53-843419
error: could not compile `goosefs-python` (lib)
Rust 1.98 added `-Wl,--fix-cortex-a53-843419` to the aarch64 target
spec as a `pre_link_arg`. `zig cc` does not recognise it and refuses to
link. cargo-zigbuild 0.23.0 filters the flag out (rust-cross/cargo-zigbuild#452);
maturin picked that up by pinning cargo-zigbuild 0.23.1.
The lockfile held maturin 1.13.3, which bundles cargo-zigbuild 0.22.2 —
visible in the failing log as the wrapper path
`~/.cache/cargo-zigbuild/0.22.2/wrappers/...`. Note that cargo-zigbuild
is a *library* inside maturin here, not the standalone binary, so
`cargo install cargo-zigbuild` would have had no effect on this build;
maturin itself is what needs to move.
Raise the floor to `maturin>=1.15` in both `[build-system].requires` and
the dev group, and relock (maturin 1.13.3 -> 1.15.0). The floor matters
more than the relock: `>=1.5` would happily resolve back to a 0.22.x
bundle on a fresh lock.
Nothing in this repo triggered the break — it landed purely from the
toolchain moving under an unpinned dependency.
Verified by reproducing the CI step locally:
maturin build --release --target aarch64-unknown-linux-gnu \
--manylinux 2_28 --zig
which now produces
`goosefs-0.1.9-cp39-abi3-manylinux_2_28_aarch64.whl`.
Also drops a stray `pub` on `URING_THREADS`, which was warning on every
build (`private_interfaces`: the static was reachable at `pub` while its
`UringThreadHandle` type is private). Both users live in the same
module, so the visibility was never needed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #451.