-
-
Notifications
You must be signed in to change notification settings - Fork 79
Open
Description
Given the following Cargo.toml
[package]
name = "minimal"
version = "0.1.0"
edition = "2024"
[dependencies]
reqwest = { version = "0.12.15", default-features = false, features = [] }And minimal main.rs:
fn main() {
let client = reqwest::Client::new();
}When compiling a release build targeting x86_64-apple-darwin, I get the following error:
$ cargo zigbuild --release --target x86_64-apple-darwin
error: linking with `/tmp/cache/cargo-zigbuild/cargo-zigbuild/0.20.0/zigcc-x86_64-apple-darwin-ceb.sh` failed: exit status: 1
|
= note: "/tmp/cache/cargo-zigbuild/cargo-zigbuild/0.20.0/zigcc-x86_64-apple-darwin-ceb.sh" "/var/folders/qf/hsgg8cb555dd0bstk25nx20h0000gp/T/rustcRyxrxF/symbols.o" "<2 object files omitted>" "/Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps/{libreqwest-77290ca4f0d47d0d.rlib,libserde_urlencoded-5f054be064d6ced5.rlib,libryu-c6452b8c272acc08.rlib,libbase64-1b7b3df991b0a9fb.rlib,libipnet-cc4db0699de5b7b3.rlib,libserde-73db20060fd58701.rlib,libtower-11c851bc8d88f37c.rlib,libsync_wrapper-9e1e5ebf21c761cb.rlib,libtower_layer-0eeb490daafc502f.rlib,libhyper_util-cca6bf10c4e558aa.rlib,libtower_service-a45514e194c24e96.rlib,libtracing-99a6ed94f1415194.rlib,libtracing_core-c18676a639748149.rlib,libonce_cell-f1ba7f093cb9ed57.rlib,libhyper-c6f31e944c507a65.rlib,libwant-06e5169961ea777a.rlib,libtry_lock-a0930aeeba444251.rlib,libhttparse-1d1bba6f6f485e49.rlib,libfutures_channel-4c4a16b9924d8207.rlib,libfutures_util-9ed7b170dcbebcb2.rlib,libfutures_task-d4f5e8a704203c34.rlib,libpin_utils-616fdece8a10ad96.rlib,libtokio-0b87380e67b0e4c3.rlib,libsocket2-4f6d4928a2315a9b.rlib,libmio-26d295626173ebf4.rlib,liblibc-eb3d359fc90cd9c9.rlib,libhttp_body_util-ab2806c530659850.rlib,libpin_project_lite-6b42e079266c8c86.rlib,libfutures_core-5366e903ffea48ca.rlib,libhttp_body-9843abac0da22329.rlib,liblog-69e2e26827333add.rlib,liburl-57b946ee5b4c87c1.rlib,libidna-58706e264f158ed5.rlib,libutf8_iter-6dc8b7e42a14cffc.rlib,libidna_adapter-cc5e8ded268b0a91.rlib,libicu_properties-5f514d9cc83078ae.rlib,libicu_properties_data-162eb24bb3fe524a.rlib,libicu_normalizer-1da3fb1aeb698a87.rlib,libsmallvec-0d08d4bf282d1f87.rlib,libicu_normalizer_data-14daa7b6178d4ea2.rlib,libicu_collections-5d7aa27669becc11.rlib,libpotential_utf-88b734770b41740b.rlib,libicu_provider-233b377e75234250.rlib,libicu_locale_core-346d1de8041ee586.rlib,libtinystr-56be0867b56566c2.rlib,liblitemap-93cdb18194369113.rlib,libwriteable-1f39bb6053e03557.rlib,libzerovec-5901d21b63e75d9a.rlib,libzerotrie-5d3fdb0db84c29f0.rlib,libyoke-d1828568178ce75f.rlib,libstable_deref_trait-82895dfbf59df924.rlib,libzerofrom-7a741bf683da3002.rlib,libform_urlencoded-5f94c6bd543c93aa.rlib,libpercent_encoding-acc8388481ec2df0.rlib,libhttp-74431e2ad3df3ffd.rlib,libitoa-6eb8f6d164525d22.rlib,libbytes-9e8a4c9f774a6c41.rlib,libfnv-8c5d784aff52517a.rlib}.rlib" "<sysroot>/lib/rustlib/x86_64-apple-darwin/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,libcfg_if-*,liblibc-*,liballoc-*,librustc_std_workspace_core-*,libcore-*,libcompiler_builtins-*}.rlib" "-liconv" "-lSystem" "-lc" "-lm" "-arch" "x86_64" "-mmacosx-version-min=10.12.0" "-o" "/Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps/minimal-23beaa379306239c" "-Wl,-dead_strip" "-nodefaultlibs"
= note: some arguments are omitted. use `--verbose` to show all linker arguments
error: __TEXT,__const: 0x74c: bad relocation
note: while parsing /Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps/libhyper-c6f31e944c507a65.rlib(hyper-c6f31e944c507a65.hyper.27398baab093d338-cgu.00.rcgu.o)
warning: `minimal` (bin "minimal") generated 1 warning
error: could not compile `minimal` (bin "minimal") due to 1 previous error; 1 warning emitted
Caused by:
process didn't exit successfully: `/nix/store/hxylwnn6sr0f6h88qrj3kr0s5pawnwn2-sccache-0.10.0/bin/sccache /Users/local/.rustup/toolchains/stable-aarch64-apple-darwin/bin/rustc --crate-name minimal --edition=2024 src/main.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=197 --crate-type bin --emit=dep-info,link -C opt-level=3 -C embed-bitcode=no --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=efab1efecfac19b0 -C extra-filename=-23beaa379306239c --out-dir /Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps --target x86_64-apple-darwin -C linker=/tmp/cache/cargo-zigbuild/cargo-zigbuild/0.20.0/zigcc-x86_64-apple-darwin-ceb.sh -C strip=debuginfo -L dependency=/Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps -L dependency=/Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/release/deps --extern reqwest=/Users/local/Documents/Code/x86_64-minimal-repro/crates/minimal/target/x86_64-apple-darwin/release/deps/libreqwest-77290ca4f0d47d0d.rlib` (exit status: 1)Interestingly enough, compiling a non-release build works without issue.
Version Dump
$ cargo --version
cargo 1.86.0 (adf9b6ad1 2025-02-28)
$ rustc --version
rustc 1.86.0 (05f9846f8 2025-03-31)
$ zig version
0.14.0
$ cargo-zigbuild --version
cargo-zigbuild 0.20.0
$ /usr/libexec/PlistBuddy \
-c "Print:ProductName" \
-c "Print:ProductVersion" /System/Library/CoreServices/SystemVersion.plist
macOS
15.4.1
$ uname -m
arm640x307e and hamnis
Metadata
Metadata
Assignees
Labels
No labels