Skip to content

rust 1.84 + cross compiling to aarch64-apple-darwin results in curl linker error #308

@astelmashenko

Description

@astelmashenko

Hello, I't trying to cross-compile my cli tool from linux to apple darwin and got into issue, it is the same when I try to build in docker or on my local machine.

OS: linux (dockerhub rust:latest)
Rust/Cargo version: 1.84.0
Zig version (via pip3): ziglang-0.13.0.post1
cargo-zigbuild: v0.19.7

I run cargo zigbuild --target aarch64-apple-darwin and get the next error:

error: linking with `/root/.cache/cargo-zigbuild/0.19.7/zigcc-aarch64-apple-darwin-d40.sh` failed: exit status: 1
  |
  = note: env -u IPHONEOS_DEPLOYMENT_TARGET -u TVOS_DEPLOYMENT_TARGET -u XROS_DEPLOYMENT_TARGET LC_ALL="C" PATH="/usr/local/rustup/toolchains/1.84.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" VSLANG="1033" ZERO_AR_DATE="1" 
...skip...
"/builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib" "-L" "/builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib" "-o" "/builds/utils/viaxcli/target/aarch64-apple-darwin/debug/deps/viax-c18d8eb63b48785b" "-Wl,-dead_strip" "-nodefaultlibs"
  = note: error: unable to find dynamic system library 'curl' using strategy 'paths_first'. searched paths:
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libnghttp2-sys-084da4b485a4e0f6/out/i/lib/libcurl.tbd
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libnghttp2-sys-084da4b485a4e0f6/out/i/lib/libcurl.dylib
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libnghttp2-sys-084da4b485a4e0f6/out/i/lib/libcurl.so
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libnghttp2-sys-084da4b485a4e0f6/out/i/lib/libcurl.a
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.tbd
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.dylib
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.so
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.a
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.tbd
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.dylib
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.so
            /builds/utils/viaxcli/target/aarch64-apple-darwin/debug/build/libz-sys-36007e0449839c1e/out/lib/libcurl.a
            /root/.cache/cargo-zigbuild/0.19.7/deps/libcurl.tbd
            /root/.cache/cargo-zigbuild/0.19.7/deps/libcurl.dylib
            /root/.cache/cargo-zigbuild/0.19.7/deps/libcurl.so
            /root/.cache/cargo-zigbuild/0.19.7/deps/libcurl.a

Any suggestions how to resolve it? Thanks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions