溫馨提示×

如何在Linux上配置Rust環境

小樊
38
2025-10-03 19:23:59
欄目: 編程語言

1. 安裝Rust工具鏈(推薦使用rustup)

rustup是Rust官方提供的工具鏈管理工具,支持多版本切換、跨平臺安裝及自動更新,是Linux下配置Rust環境的首選方式。
打開終端,運行以下命令下載并執行安裝腳本:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

腳本會引導你完成安裝流程(接受許可協議、選擇默認工具鏈等)。安裝完成后,必須執行以下命令激活環境變量(使Rust命令全局可用):

source $HOME/.cargo/env

或針對Zsh用戶:

source ~/.zshrc

驗證安裝是否成功,運行以下命令(應顯示Rust編譯器rustc和包管理器cargo的版本信息):

rustc --version && cargo --version

若需使用系統包管理器安裝(版本可能滯后),可參考以下命令(以Ubuntu/Debian為例):

sudo apt update && sudo apt install rustc cargo

官方推薦優先使用rustup,以確保獲得最新穩定版Rust。

2. 配置環境變量

若未通過rustup腳本自動配置環境變量,需手動將Rust工具鏈路徑(~/.cargo/bin)添加到Shell配置文件中(如~/.bashrc~/.zshrc):

echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc  # Debian/Ubuntu
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.zshrc   # Zsh

保存文件后,運行以下命令使更改立即生效:

source ~/.bashrc  # 或 source ~/.zshrc

驗證環境變量是否配置成功:

echo $PATH | grep ".cargo/bin"  # 應輸出包含.cargo/bin的路徑

3. 安裝必要依賴(編譯Rust項目所需)

Rust項目若涉及C/C++代碼(如通過cc crate調用原生庫),需安裝構建工具鏈。不同發行版的安裝命令如下:

  • Debian/Ubuntu
    sudo apt update && sudo apt install build-essential
    
  • Fedora
    sudo dnf groupinstall "Development Tools" && sudo dnf install gcc
    
  • Arch Linux
    sudo pacman -S base-devel
    

這些工具將用于編譯項目中的原生擴展模塊。

4. 配置代碼編輯器(提升開發效率)

推薦使用**Visual Studio Code(VS Code)**搭配rust-analyzer擴展,實現代碼補全、語法高亮、錯誤檢查等功能。

  • 安裝VS Code:
    sudo snap install --classic code  # Ubuntu/Debian(Snap方式)
    
  • 安裝rust-analyzer
    打開VS Code,按下Ctrl+Shift+X打開擴展面板,搜索“rust-analyzer”并點擊“安裝”。

5. 創建并運行第一個Rust項目

使用cargo(Rust的包管理器與構建系統)創建新項目:

cargo new hello_rust  # 創建名為hello_rust的項目目錄
cd hello_rust         # 進入項目目錄

項目結構如下:

hello_rust/
├── Cargo.toml  # 項目配置文件(依賴管理)
└── src/
    └── main.rs # 主程序入口(默認包含"Hello, world!"示例)

運行項目:

cargo run  # 編譯并運行項目,終端將輸出"Hello, world!"

若需僅編譯(不運行),可使用:

cargo build

編譯后的可執行文件位于target/debug/目錄下。

6. 可選優化:配置國內鏡像(加速依賴下載)

若依賴下載緩慢,可配置國內鏡像源(如清華大學鏡像)。編輯~/.cargo/config文件(不存在則新建),添加以下內容:

[source.crates-io]
replace-with = 'tuna'

[source.tuna]
registry = "https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

保存后,cargo將優先從國內鏡像下載依賴,顯著提升下載速度。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女