Rust 專案打包成一個 Windows 可執行檔案(.exe),你可以使用 Rust 的內建工具 cargo 來進行構建和打包。Rust 提供了簡單、直接的方式將你的專案編譯為適用於 Windows 的 EXE 檔案。以下是從開始到完成的詳細步驟:

suv789發表於2024-11-11

Rust 專案打包成一個 Windows 可執行檔案(.exe),你可以使用 Rust 的內建工具 cargo 來進行構建和打包。Rust 提供了簡單、直接的方式將你的專案編譯為適用於 Windows 的 EXE 檔案。以下是從開始到完成的詳細步驟:

步驟 1:安裝 Rust 和工具鏈

  1. 安裝 Rust: 如果你尚未安裝 Rust,可以透過 Rust 官網 來安裝 Rust,或者透過以下命令使用 rustup 安裝 Rust:

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

    安裝完成後,重啟終端,執行以下命令驗證安裝:

    bashCopy Code
    rustc --version

    如果顯示 Rust 編譯器的版本資訊,說明安裝成功。

  2. 安裝適用於 Windows 的工具鏈: 如果你在 Windows 上開發 Rust,可以確保你安裝了合適的目標架構工具鏈。預設情況下,rustup 會安裝與當前作業系統相容的工具鏈,但如果你在其他平臺(如 macOS 或 Linux)上開發並希望為 Windows 編譯,可以安裝目標工具鏈:

    bashCopy Code
    rustup target add x86_64-pc-windows-gnu

    這將允許你為 Windows 生成 exe 檔案。

步驟 2: 建立一個新的 Rust 專案

  1. 開啟命令列(終端)並建立一個新的 Rust 專案:

    bashCopy Code
    cargo new my_project
    cd my_project

    這會建立一個包含預設程式碼的 Rust 專案,位於 my_project 資料夾中。預設的 main.rs 檔案會位於 src 目錄下。

步驟 3: 編寫 Rust 程式碼

編輯 src/main.rs 檔案,寫入你的 Rust 程式碼。例如:

rustCopy Code
fn main() {
    println!("Hello, world!");
}

你可以根據需要編寫你的應用邏輯。

步驟 4: 編譯為 EXE 檔案

在專案目錄中,使用 cargo build 命令來構建專案。根據你的需求,有兩種常見的編譯方式:

1. 生成除錯版 EXE

預設情況下,Rust 編譯器會生成除錯版本的可執行檔案。執行以下命令:

bashCopy Code
cargo build

這將生成一個可執行檔案,路徑為:

Copy Code
target/debug/my_project.exe

2. 生成釋出版 EXE

為了生成最佳化過的釋出版本,可以使用 --release 引數:

bashCopy Code
cargo build --release

釋出版將生成一個最佳化過的 EXE 檔案,路徑為:

Copy Code
target/release/my_project.exe

步驟 5: 執行 EXE 檔案

生成 EXE 檔案後,你可以在 Windows 系統上直接執行它。你可以在檔案資源管理器中雙擊 EXE 檔案,或者在命令列中執行:

bashCopy Code
./target/debug/my_project.exe

或者:

bashCopy Code
./target/release/my_project.exe

步驟 6: 配置 Windows 依賴項(如果需要)

  1. 使用靜態連結(如果你不想依賴動態庫)

    預設情況下,Rust 在編譯時會連結到動態庫(例如,標準庫等)。如果你希望生成一個靜態連結的 EXE 檔案,以確保不需要額外的依賴項(例如,在目標機器上不需要安裝 Visual C++ Redistributable),你可以指定靜態連結:

    Cargo.toml 中新增以下配置:

    tomlCopy Code
    [profile.release]
    panic = "abort"
    lto = true

    然後使用 cargo build --release 進行編譯,Rust 會盡可能將所有依賴靜態連結到 EXE 檔案中。

  2. 使用 mingw 工具鏈

    如果你需要交叉編譯為 Windows 的 EXE 檔案,或者希望使用 mingw 工具鏈進行構建(例如在 Linux 或 macOS 上生成 Windows 可執行檔案),你可以安裝 mingw 工具鏈並指定目標架構。

    安裝 mingw 工具鏈:

    bashCopy Code
    rustup target add x86_64-pc-windows-gnu

    然後編譯時指定目標:

    bashCopy Code
    cargo build --target x86_64-pc-windows-gnu --release

步驟 7: 釋出和分發 EXE 檔案

編譯後的 EXE 檔案位於 target/release/ 資料夾中。你可以將這個 EXE 檔案複製到 Windows 機器上,直接執行它,而不需要安裝 Rust 或任何其他依賴項。

額外提示:為 EXE 設定圖示

如果你想為生成的 EXE 檔案設定圖示,可以使用第三方工具(如 windrescargo-windeps)來嵌入圖示。Rust 本身並不直接支援為 EXE 檔案新增圖示,但可以透過構建指令碼或工具進行擴充套件。

將 Rust 專案打包為 Windows 可執行檔案的過程非常簡單,使用 cargo build 命令即可生成 EXE 檔案。透過設定合適的編譯選項,你可以生成除錯版或釋出版的 EXE 檔案,並將其分發到 Windows 平臺上執行。如果你需要進一步定製或靜態連結依賴項,Rust 也提供了相關選項。

相關文章