我想在我的mac m1中构建我的repo https://github.com/doki23/prql-java的cdylib crate .
操作如下:
rustup target add x86_64-unknown-linux-gnu
cargo build --target x86_64-unknown-linux-gnu
但是我遇到了问题:
= note: ld: unknown option:——version-script=/var/folders/df/1lz9t40n171_5550cy_f1h3c0000gn/T/rustczqz5TV/listClang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
如何在mac m1中构建x86_64 linux库?
需要配置正确的linker
和ar
路径:
将以下行添加到您的${HOME}/.cargo/config
:
[target.x86_64-unknown-linux-gnu]
ar = "[PATH_TO_CROSS_TOOLCHAIN]/bin/ar"
linker = "[PATH_TO_CROSS_TOOLCHAIN]/bin/clang"
你也可以使用ld
的交叉工具链代替clang,如果你有,说gcc
。
假设你想为androidx86_64
构建;将此添加到您的${HOME}/.cargo/config
文件
[target.x86_64-linux-android]
ar = "${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/darwin-x86_64/bin/x86_64-linux-android-ar"
linker = "/${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/darwin-x86_64/bin/x86_64-linux-android28-clang"