Windows11运行Tauri Android项目时OpenSSL未找到的解决方法
解决Windows11下Tauri v2 Android开发的OpenSSL交叉编译问题
方案1:启用rust-openssl的vendored特性(推荐)
该方式让openssl-sys crate自行编译并链接静态OpenSSL库,无需依赖系统安装的OpenSSL,完全适配交叉编译场景。
- 在项目根目录的
Cargo.toml中,为依赖openssl-sys的上游 crate 添加vendored = true特性:# 示例:若项目依赖reqwest(间接依赖openssl) reqwest = { version = "0.11", features = ["vendored"] } # 若直接依赖openssl-sys openssl-sys = { version = "0.9", features = ["vendored"] } - 若不清楚哪些依赖关联了
openssl-sys,可执行以下命令查看依赖链:cargo tree | findstr openssl-sys - 清理构建缓存后重新执行开发命令:
cargo clean npx tauri android dev
方案2:手动配置Android版OpenSSL环境(复杂场景备选)
若必须使用系统级Android OpenSSL库,需手动准备预编译库并配置环境变量:
- 下载或编译适配Android x86_64架构的OpenSSL库
- 设置交叉编译所需的环境变量(替换为你的实际路径):
set X86_64_LINUX_ANDROID_OPENSSL_DIR=C:\your-android-openssl-path\x86_64 set PKG_CONFIG_ALLOW_CROSS=1 set PKG_CONFIG_SYSROOT_DIR=C:\your-android-ndk-path\sysroot - 重新执行
npx tauri android dev
额外验证项
- 确认Android NDK版本符合Tauri v2官方要求
- 检查
rustup已安装Android目标架构:rustup target add x86_64-linux-android
内容的提问来源于stack exchange,提问作者David Martínez Gil
相关产品推荐
相关产品推荐

