Rust之入門簡介
1. 入門指南
1.1. 安裝
第一步是安裝Rust
。我們將通過rustup
命令行工具Rust
來下載Rust
,該命令行工具用於管理Rust
版本和相關工具,需要聯網下載。
以下步驟將安裝Rust編譯器的最新穩定版本。Rust的穩定性保證可確保本書中所有編譯的示例都將繼續使用較新的Rust版本進行編譯。不同版本之間的輸出可能會略有不同,因爲Rust經常會改進錯誤消息和警告。換句話說,使用這些步驟安裝的任何較新的穩定版本的Rust都應該可以按本書的預期工作。
1.1.1. Linux
或者macOS
平臺安裝
在終端中執行:(需要先安裝curl
)
$ curl https://sh.rustup.rs -sSf | sh
安裝示例:
選擇默認爲1就可以了。安裝工具會自動在 ~/.profile
里加入 ~/.cargo/bin
的 PATH
設置,類似以下:
查看安裝情況:
$ rustc --version
$ cargo --version
1.1.2. Windows平臺安裝
官網下載地址:https://www.rust-lang.org/,然後下一步,下一步。
在安裝後Rust
之前,windows
平臺上需要先安裝 Microsoft C++ build tools
,推薦2019版本。如果不安裝,後面在編譯時,會報錯link.exe
無法找到。
直接安裝VS2019
社區版,選擇安裝 C/C++ 的編譯環境。應該大概 3G
多吧!安裝挺快的,耐心等待吧!沒辦法,希望以後可以改進吧!
1.2. Hello world!
1.2.1 創建項目目錄
執行Windows執行的命令:
E:\RustApp\learn_rust> mkdir rust_2 # 創建rust_2目錄
E:\RustApp\learn_rust> dir # 查看
E:\RustApp\learn_rust> cd rust_2 # 進入目錄
E:\RustApp\learn_rust> notepad hello_world.rs # 創建hello_world.rs文件
編譯執行文件:
1.3. Hello,Cargo!
Cargo是Rust的構建系統和包管理器。大多數Rustaceans使用此工具來管理他們的Rust項目,因爲Cargo會爲您處理很多任務,例如構建代碼,下載代碼所依賴的庫以及構建這些庫。(我們稱庫爲您的代碼需要依賴項。)
像我們到目前爲止編寫的那樣,最簡單的Rust程序沒有任何依賴關係。因此,如果我們建立了Hello,世界!在Cargo項目中,它將僅使用Cargo處理代碼的部分。在編寫更復雜的Rust程序時,您將添加依賴項,並且如果使用Cargo啓動項目,則添加依賴項將更加容易。
由於絕大多數Rust項目都使用Cargo,請在終端中輸入以下內容,檢查是否已安裝Cargo:
$ cargo --version
如果看到版本號,就知道了!如果看到諸如的錯誤,請查看command not found
您的安裝方法文檔,以確定如何分別安裝Cargo。
使用cargo
創建項目:
$ cargo new hello_cargo
$ cd hello_cargo
Cargo爲我們生成了兩個文件和一個目錄:一個Cargo.toml
文件和一個其中包含main.rs
文件的 src
目錄。它還已經初始化了一個新的Git存儲庫以及一個.gitignore
文件。
PS E:\RustApp\learn_rust\hello_cargo> type .\Cargo.toml [package] name = "hello_cargo" version = "0.1.0" authors = ["molongyin <[email protected]>"] edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
PS E:\RustApp\learn_rust\hello_cargo>
這樣的創建的項目的src
目錄中包含main.rs
文件。
E:\RustApp\learn_rust\hello_cargp\src>type main.rs
fn main() {
println!("hello, world!");
}
在項目的根目錄執行編譯和運行:
E:\RustApp\learn_rust\hello_cargo>cargo build
Compiling hello_cargo v0.1.0 (E:\RustApp\learn_rust\hello_cargo)
Finished dev [unoptimized + debuginfo] target(s) in 1.18s
E:\RustApp\learn_rust\hello_cargo>cargo run
Finished dev [unoptimized + debuginfo] target(s) in 0.02s
Running `target\debug\hello_cargo.exe` Hello, world!
E:\RustApp\learn_rust\hello_cargo>cd src
現在這樣,期待下一偏吧!