Closed
Description
[Updated] Workaround
See this comment.
To reproduce
mkdir foo
cd foo
cargo init
cross build --target=aarch64-unknown-linux-musl --release --all-targets
-- note that this succeedsecho 'nightly' > rust-toolchain
cross build --target=aarch64-unknown-linux-musl --release --all-targets
-- note that this fails
Actual outcome
Step 6 fails with
$ cross build --target=aarch64-unknown-linux-musl --release --all-targets
info: syncing channel updates for 'nightly-x86_64-unknown-linux-gnu'
nightly-x86_64-unknown-linux-gnu unchanged - rustc 1.57.0-nightly (485ced56b 2021-10-07)
info: checking for self-updates
Compiling foo v0.1.0 (/project)
error: linking with `aarch64-linux-musl-gcc` failed: exit status: 1
|
= note: "aarch64-linux-musl-gcc" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crt1.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crti.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtbegin.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-a9545cdbbb8683ea.foo.4b08363c-cgu.0.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-a9545cdbbb8683ea.foo.4b08363c-cgu.1.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-a9545cdbbb8683ea.foo.4b08363c-cgu.2.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-a9545cdbbb8683ea.6er9z6ghb47uqlg.rcgu.o" "-Wl,--as-needed" "-L" "/target/aarch64-unknown-linux-musl/release/deps" "-L" "/target/release/deps" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib" "-Wl,--start-group" "-Wl,-Bstatic" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd-c44788b657ddddd5.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libpanic_unwind-2becdccda730ce42.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libminiz_oxide-3a7898da562cf313.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libadler-fc70ddb33855e2e8.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libobject-5fb8217618711e88.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libmemchr-c061be432db3e13d.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libaddr2line-5a6d99ea33f6ceae.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libgimli-6db2c8017781e41d.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd_detect-7d0d2f13c64acb61.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_demangle-77c2cc6c5af8536c.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libhashbrown-8ca99a806b6c7500.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_alloc-eced44336e84fd45.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libunwind-ec4fe46000190b79.rlib" "-lunwind" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcfg_if-692ed2e2b4273428.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/liblibc-72b57ab90668a509.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/liballoc-7aed2b0a9d39bb09.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_core-e0db88e40d9c7e0b.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcore-fcedc0d4b8cb02ca.rlib" "-Wl,--end-group" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcompiler_builtins-cbf6a032efba8222.rlib" "-Wl,-Bdynamic" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-nostartfiles" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained" "-o" "/target/aarch64-unknown-linux-musl/release/deps/foo-a9545cdbbb8683ea" "-Wl,--gc-sections" "-static" "-no-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "-lgcc" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtend.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtn.o"
= note: /rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcompiler_builtins-cbf6a032efba8222.rlib(cpu_model.o): In function `init_have_lse_atomics':
/cargo/registry/src/github.jpy.wang-1ecc6299db9ec823/compiler_builtins-0.1.49/./lib/builtins/cpu_model.c:786: undefined reference to `getauxval'
collect2: error: ld returned 1 exit status
= help: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
= note: use the `-l` flag to specify native libraries to link
= note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)
error: could not compile `foo` due to previous error
warning: build failed, waiting for other jobs to finish...
error: linking with `aarch64-linux-musl-gcc` failed: exit status: 1
|
= note: "aarch64-linux-musl-gcc" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crt1.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crti.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtbegin.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-82633e12cd2e5a19.foo.b81dabbf-cgu.0.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-82633e12cd2e5a19.foo.b81dabbf-cgu.1.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-82633e12cd2e5a19.foo.b81dabbf-cgu.2.rcgu.o" "/target/aarch64-unknown-linux-musl/release/deps/foo-82633e12cd2e5a19.11e6h28jheunbtcu.rcgu.o" "-Wl,--as-needed" "-L" "/target/aarch64-unknown-linux-musl/release/deps" "-L" "/target/release/deps" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib" "-Wl,-Bstatic" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libtest-3a3779ef37dcf104.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libgetopts-4b9c52f1a6321a32.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libunicode_width-3a27e1f0db71671d.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_std-9ce51e2ad117da5c.rlib" "-Wl,--start-group" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd-c44788b657ddddd5.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libpanic_unwind-2becdccda730ce42.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libminiz_oxide-3a7898da562cf313.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libadler-fc70ddb33855e2e8.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libobject-5fb8217618711e88.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libmemchr-c061be432db3e13d.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libaddr2line-5a6d99ea33f6ceae.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libgimli-6db2c8017781e41d.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libstd_detect-7d0d2f13c64acb61.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_demangle-77c2cc6c5af8536c.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libhashbrown-8ca99a806b6c7500.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_alloc-eced44336e84fd45.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libunwind-ec4fe46000190b79.rlib" "-lunwind" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcfg_if-692ed2e2b4273428.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/liblibc-72b57ab90668a509.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/liballoc-7aed2b0a9d39bb09.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/librustc_std_workspace_core-e0db88e40d9c7e0b.rlib" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcore-fcedc0d4b8cb02ca.rlib" "-Wl,--end-group" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcompiler_builtins-cbf6a032efba8222.rlib" "-Wl,-Bdynamic" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-nostartfiles" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib" "-L" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained" "-o" "/target/aarch64-unknown-linux-musl/release/deps/foo-82633e12cd2e5a19" "-Wl,--gc-sections" "-static" "-no-pie" "-Wl,-zrelro" "-Wl,-znow" "-Wl,-O1" "-nodefaultlibs" "-lgcc" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtend.o" "/rust/lib/rustlib/aarch64-unknown-linux-musl/lib/self-contained/crtn.o"
= note: /rust/lib/rustlib/aarch64-unknown-linux-musl/lib/libcompiler_builtins-cbf6a032efba8222.rlib(cpu_model.o): In function `init_have_lse_atomics':
/cargo/registry/src/github.jpy.wang-1ecc6299db9ec823/compiler_builtins-0.1.49/./lib/builtins/cpu_model.c:786: undefined reference to `getauxval'
collect2: error: ld returned 1 exit status
= help: some `extern` functions couldn't be found; some native libraries may need to be installed or have their path specified
= note: use the `-l` flag to specify native libraries to link
= note: use the `cargo:rustc-link-lib` directive to specify the native libraries to link with Cargo (see https://doc.rust-lang.org/cargo/reference/build-scripts.html#cargorustc-link-libkindname)
error: build failed
Expected outcome
Step 6 should succeed :-)