[TOC]
- 时间:
2021年12月 - rust 版本:
1.57.0 - 操作系统:
Windows 10 家庭中文版 (21H1) 64位
一、 Rust 环境搭建
从rust官网下载rust安装包 ,我的电脑是 win 64 位的,下载的是 rustup-init.exe (64位) 安装包。
Rust的编译工具依赖C语言的编译工具;安装的时候提示需要安装Visual Studio(下载地址);下载后选择C++选项即可。这里不过多描述rust的安装。
二、 Rust NDK 配置
-
配置
NDK环境变量- 如果电脑上有
Android开发环境,可以去ANDROID_SDK/ndk目录下看看有没有已经下载好的NDK,如:21.4.7075529或23.0.7599858等这样的目录,不过我这边测试如果把23.0.7599858配置进去,构建NDK的时候会打包失败,暂时用21.4.7075529的版本吧。 - 如果没有,可以去谷歌下载,国内访问 NDK 下载 | Android NDK | Android Developers (google.cn)
- 历史版本下载地址 NDK 修订历史记录 | Android NDK | Android Developers (google.cn)
- 配置环境变量:
ANDROID_NDK_HOME目录指向 ndk 版本的目录
- 如果电脑上有
-
安装NDK相关内容
-
安装
cargo-ndkcargo install cargo-ndk -
添加
toolchainrustup target add \ aarch64-linux-android \ armv7-linux-androideabi \ x86_64-linux-android \ i686-linux-android
-
-
编译相关so命令,如生成
armeabi-v7a和arm64-v8a的命令cargo ndk -t armeabi-v7a -t arm64-v8a -o ./jniLibs build --release -
之前踩坑的部分整理
-
编译命令:刚开始查相关资料的时候,好多博客上给的编译命令是:
cargo ndk --platform 21 --target armv7-linux-androideabi build --release cargo ndk --platform 21 --target aarch64-linux-android build --release cargo ndk --platform 21 --target x86_64-linux-android build --release cargo ndk --platform 21 --target i686-linux-android build --release这个命令不知道是不支持了还是其他原因,在我电脑上开始会报
error: linker 'link.exe' not found后面一顿操作,换成了
Error: linker 'cc' not found这个问题我卡了好久,直到找到cargo-ndk项目才发现新的编译命令
-
本文章同步发布到 https://blog.hulytu.com