Rust在Debian的跨平台支持概览
一 支持现状与政策动向
二 在Debian上搭建跨平台开发环境
sudo apt install rustc cargocurl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup update
rustup target add armv7-unknown-linux-gnueabihfcargo build --target armv7-unknown-linux-gnueabihfcargo install cross
cross build --target aarch64-unknown-linux-gnu --release
cross run --target aarch64-unknown-linux-gnu
# 生成几乎零依赖的静态二进制(musl)
cross build --target x86_64-unknown-linux-musl --release
cross build --target arm-unknown-linux-musleabihf --release
[target.aarch64-unknown-linux-gnu]
pre-build = [
"dpkg --add-architecture $CROSS_DEB_ARCH",
"apt-get update && apt-get --assume-yes install libssl-dev:$CROSS_DEB_ARCH"
]
cargo install cargo-deb
cargo deb
sudo dpkg -i target/debian/*.deb
以上流程覆盖从环境搭建、交叉编译到打包的完整链路,适合在 x86_64 主机上产出 ARM64/ARMv7 等目标的可执行文件与安装包。
三 跨平台开发要点与实战建议
#[cfg(target_os = "...")] 等条件编译为不同操作系统与架构编写差异化代码;调用 C 库时可用 bindgen 自动生成 Rust 绑定,提升跨平台互操作效率。sudo apt update && sudo apt install -y mingw-w64 gcc-mingw-w64-x86-64
rustup target add x86_64-pc-windows-gnu
# 如需 ARM64 Windows:rustup target add aarch64-pc-windows-msvc
windows 与 windows-targets 即可调用 WinAPI,实现从 Linux 到 Windows 的交叉开发与发布。四 面向多架构发布的实践清单