Rust
Rust
toolchains
- rustc
- cargo
- rustup
基础使用
升级工具链
1 | rustup update |
卸载
1 | rustup self uninstall |
安装Rust
Install Rust - Rust Programming Language (rust-lang.org)
Win上面用安装包就好了
Linux:
1 | proxychains4 curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh |
Rust on Android(Linux环境)
感谢某日本老哥的blog,谢谢,这下看懂了:
RustでAndroid/iOSクロスプラットフォームしちゃう (zenn.dev)
zamberform/rust_x_demo: a demo project about dev with rust on iOS&Android (github.com)
1 | # 创建一个lib项目 |
为什么不用Windows
最后编译阶段有个奇怪的bug,没解决方法。搁置了。
大概就是出现了一些莫名其妙的非UTF8字节把编译器搞报错了。
其他问题
warning: unused manifest key: target.aarch64-linux-android.linker
1 | [target.aarch64-linux-android] |
这个需要在用户/.cargo/config
里面进行全局设置,直接在项目里面的Cargo.toml
里面添加会被无视。
Crates
aes
1 | [dependencies] |
配合block-modes
使用
1 | block-modes = "0.8.1" |
RustでAES-256-CBC暗号化 #Ruby - Qiita
有点bug!
最后选择:
keepsimple1/libaes: A small and fast AES cipher in safe Rust (github.com)
xxtea
1 | [dependencies] |
rand
1 | rand = "0.8.5" |
jni
jni - crates.io: Rust Package Registry
1 | jni = "0.21.1" |
JNI Rust
With Java - Comprehensive Rust 🦀 (google.github.io)
JNI_Onload
Rust NDK 开发#2 - 签名校验 - 八阿哥客栈 (hulytu.com)
Rust加固
strip
将其他C++符号给删除。
Rust内混淆
cargo-strip
把Rust函数strip掉
guedou/cargo-strip: Strip Rust binaries created with cargo (github.com)
1 | [profile.release] |
Profiles - The Cargo Book (rust-lang.org)
Rust编程教程
(4) New Rust course by Android: Comprehensive Rust 🦀 : rust (reddit.com)
Experiment Introduction - The Rust Programming Language (brown.edu)
关于rust的其他细节
Rust 的from_utf8()和as_bytes()等函数_rust将utf-8转换为byte-CSDN博客
[rust print vec u8 to hex-掘金 (juejin.cn)](https://juejin.cn/s/rust print vec u8 to hex)
Rust的条件编译_rust 条件编译_fpcc的博客-CSDN博客
(4) Cannot return reference to temporary value : rust (reddit.com)
Convert u8 array to base64 string in Rust - Stack Overflow
- 本文作者: Taardis
- 本文链接: https://taardisaa.github.io/2023/11/22/Rust/
- 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!