Rust环境
- rust安装
curl https://sh.rustup.rs -sSf | sh
sudo apt-get install musl-tools
- Cargo创建新项目
cargo new hello-rust
- Cargo编译
rustc hello_world.rs
- 编译默认debug版本
cargo build
- cargo编译release版本
cargo build --release
- cargo编译debug版本
cargo build --debug
cargo run // 运行
- 多平台交叉编译
rustup install stable-x86_64-unknown-linux-gnu
rustup target add x86_64-unknown-linux-gnu
cargo build --release --target x86_64-unknown-linux-gnu
rustup target add x86_64-unknown-linux-musl
cargo build --release --target x86_64-unknown-linux-musl
rustup target list
- 添加或移除平台
添加
rustup target add aarch64-unknown-linux-gnu
移除
rustup target remove aarch64-unknown-linux-gnu
- 更新模块
cargo update -p time
- 交叉编译器并配置
`要发布到linux-arm64平台,可以在 https://releases.linaro.org/components/toolchain/binaries/ 这里下载编译器,推荐latest版本。或者从 https://github.com/kekeqy/windows-hosted-aarch64-linux-musl-gcc-cross-compiler 这里下载。
要发布到linux-x64平台,可以在 https://github.com/kekeqy/windows-hosted-x86_64-linux-musl-gcc-cross-compiler 这里下载编译器,亲测可用。 尽量选择 musl 版本,而非gnu版本因为musl是静态编译,不依赖系统本地的库文件。下载好的编译器解压出来,并将bin目录添加到系统环境变量Path中。`
C:\Users\Administrator\.cargo\config.toml
/root/.cargo/config.toml
[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"
[target.x86_64-unknown-linux-musl]
linker = "x86_64-linux-musl-gcc"