Rust交叉编译Android(x86_64/aarch64)目标链接器配置报错,求正确配置
Rust交叉编译Android平台链接器配置错误解决方法
出现clang: No such file or directory错误,本质是系统找不到你配置的x86_64-linux-android34-clang/aarch64-linux-android34-clang可执行文件,以下是两种可行的解决方式:
方式一:指定clang完整路径
找到你的Android NDK安装目录,进入toolchains/llvm/prebuilt/[你的系统架构]/bin目录(比如Linux x86_64系统对应linux-x86_64,macOS ARM对应darwin-aarch64),复制对应clang的完整路径,替换到config.toml中:
[target.x86_64-linux-android] linker = "/opt/android-ndk-r26/toolchains/llvm/prebuilt/linux-x86_64/bin/x86_64-linux-android34-clang" [target.aarch64-linux-android] linker = "/opt/android-ndk-r26/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android34-clang"
注意:替换路径中的/opt/android-ndk-r26为你实际的NDK安装路径,linux-x86_64为你的系统架构目录。
方式二:添加clang路径到环境变量
将NDK的clang所在目录添加到系统PATH环境变量中,以Linux为例:
export PATH="/opt/android-ndk-r26/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH"
配置完成后,你原来的config.toml配置即可正常生效,因为系统现在能找到对应的clang可执行文件。
内容的提问来源于stack exchange,提问作者Larry
相关产品推荐
相关产品推荐

