Rust的官方推荐安装工具是rustup,它可以方便地管理Rust工具链(包括编译器rustc、包管理器cargo等)。以下是具体步骤:
打开终端,运行以下命令下载并执行安装脚本:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
安装过程中会提示选择安装选项(默认安装最新稳定版Rust),按提示操作即可。安装完成后,脚本会提示需要重启终端或运行以下命令使环境变量生效:
source $HOME/.cargo/env
安装完成后,通过以下命令检查Rust编译器和包管理器的版本:
rustc --version # 查看Rust编译器版本
cargo --version # 查看Cargo包管理器版本
若输出类似rustc 1.82.0 (f6e511eec 2024-10-15)的版本信息,则说明安装成功。
对于Ubuntu/Debian等发行版,也可以使用包管理器安装(但版本可能不是最新):
sudo apt update
sudo apt install rustc cargo
对于Fedora:
sudo dnf install rust cargo
对于Arch Linux:
sudo pacman -S rust cargo
使用rustup可以轻松更新Rust到最新版本:
rustup update
Rust使用cargo作为项目管理和构建工具,创建项目的命令如下:
cargo new 项目名称 # 如 cargo new hello_world
cd 项目名称 # 进入项目目录
执行上述命令后,cargo会在当前目录下创建一个包含以下结构的项目文件夹:
项目名称/
├── Cargo.toml # 项目配置文件(依赖管理、元数据等)
└── src/
└── main.rs # 主程序入口文件(默认包含"Hello, world!"示例)
在项目根目录(包含Cargo.toml的目录)下,运行以下命令编译项目:
cargo build # 编译为调试版本(生成在 target/debug/ 目录)
cargo build --release # 编译为发布版本(优化性能,生成在 target/release/ 目录)
调试版本包含调试信息,适合开发和调试;发布版本经过优化,性能更高,适合生产环境。
无需手动编译,可以直接使用cargo run命令编译并运行项目:
cargo run # 运行调试版本
cargo run --release # 运行发布版本
若项目编译成功,终端会输出程序的结果(如Hello, world!\n)。
若不想使用cargo,也可以直接使用rustc编译单个Rust文件(如main.rs):
rustc main.rs # 编译生成可执行文件(默认名称为 main)
./main # 运行可执行文件
这种方式适合简单的项目,复杂项目建议使用cargo管理。
rustc支持多种编译选项,以下是常用的几个:
使用-o选项指定输出文件的名称:
rustc main.rs -o my_program # 编译生成 my_program 可执行文件
./my_program # 运行
使用-g选项生成调试信息(等价于-C debuginfo=2),方便使用GDB等工具调试:
rustc -g main.rs
使用-O选项开启优化(等价于-C opt-level=2),提高程序性能:
rustc -O main.rs
使用-L选项添加库搜索路径,-l选项链接外部库:
rustc -L. -lmylib main.rs # 链接当前目录下的 libmylib.so 或 libmylib.a
其中-L.表示将当前目录添加到库搜索路径,-lmylib表示链接名为mylib的库(会自动查找libmylib.so或libmylib.a)。
使用--crate-type选项指定编译输出的crate类型(如可执行文件、静态库、动态库等):
rustc --crate-type bin main.rs # 编译为可执行文件(默认)
rustc --crate-type staticlib main.rs # 编译为静态库(生成 libmain.a)
rustc --crate-type dylib main.rs # 编译为动态库(生成 libmain.so)
若安装后出现rustc: command not found,可能是环境变量未正确配置。需要将~/.cargo/bin添加到PATH中:
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
若编译时提示缺少依赖(如libssl),可以使用系统的包管理器安装:
sudo apt install libssl-dev # Ubuntu/Debian
sudo dnf install openssl-devel # Fedora
若需要卸载Rust,可以运行以下命令:
rustup self uninstall
这会删除~/.cargo目录及其中的所有内容,恢复系统环境。
通过以上步骤,你可以在Linux环境下顺利安装和使用Rust编译器,完成Rust项目的开发、编译和运行。