Win11環(huán)境下搭建Rust開發(fā)環(huán)境

在Win系列操作系統(tǒng)中损拢,Rust開發(fā)環(huán)境需要依賴C/C++編譯環(huán)境探橱,因此需要先安裝C/C++工具vs_buildtools。

1绘证、安裝vs_buildtools工具

打開瀏覽器,訪問https://visualstudio.microsoft.com/zh-hans/visual-cpp-build-tools/哗讥,點(diǎn)擊“下載生成工具”按鈕嚷那,如下圖所示:

下載vs_buildtools
下載完成后,雙擊下載的.exe文件杆煞,按照提示默認(rèn)安裝魏宽,在最后選擇安裝組件時(shí)選擇如下圖所示:
選擇安裝組件
由于我的環(huán)境已經(jīng)安裝了相關(guān)組件,因此圖中標(biāo)識(shí)4處的文字與實(shí)際內(nèi)容可能不同决乎,實(shí)際內(nèi)容應(yīng)該是“安裝”按鈕队询。選擇需要安裝的組件后,點(diǎn)擊“安裝”按鈕(圖中標(biāo)識(shí)4處)构诚,完成vs_buildtools工具安裝蚌斩。

2、安裝Rust相關(guān)工具

打開瀏覽器范嘱,訪問https://www.rust-lang.org/zh-CN/tools/install送膳,根據(jù)當(dāng)前操作系統(tǒng)的環(huán)境(目前主流操作系統(tǒng)一般都是64位操作系統(tǒng)),點(diǎn)擊“下載RUSTUP-INIT.EXT(64位)”按鈕下載Rust安裝工具丑蛤。下載完成后叠聋,在資源管理器中瀏覽到安裝工具保存的目錄,然后在地址欄輸入“cmd”受裹,在當(dāng)前目錄打開cmd命令行窗口碌补,如下圖所示:

打開cmd命令行窗口
然后在命令行窗口執(zhí)行以下命令:

set RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
set RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

設(shè)置這些環(huán)境變量的目的是讓rust安裝包使用國(guó)內(nèi)rust鏡像庫(kù)安裝,以提高相關(guān)Rust軟件包的下載速度。之后執(zhí)行rustup-init.exe厦章,選擇1項(xiàng)(default)后敲擊回車鍵開始安裝镇匀。如下圖所示:
安裝

如果一切順利(不順利可能是因?yàn)槟愕木W(wǎng)絡(luò)不穩(wěn)定),安裝提示成功后闷袒,就可以驗(yàn)證相關(guān)工具是否處于可用狀態(tài)坑律。
在某目錄下下新建一個(gè)rssrc目錄(表示該目錄保存的是rust源碼),打開cmd(或者powershell)囊骤,切換當(dāng)前目錄到rssrc目錄晃择,執(zhí)行以下命令:

cargo -V
rustc -V

如果每條命令的輸出都是你安裝的Rust版本號(hào),說明工具安裝成功也物,如下圖所示:
檢查工具安裝是否成功

3宫屠、創(chuàng)建rust應(yīng)用項(xiàng)目(也稱為應(yīng)用工程)

在cmd窗口(或者powershell窗口,后續(xù)文檔中滑蚯,cmd窗口和powershell窗口具有相同的效果)中執(zhí)行以下命令創(chuàng)建第一個(gè)rust應(yīng)用工程浪蹂,之后使用cd命令切換當(dāng)前目錄到firstrust工程中:

cargo new firstrust
cd firstrust

cargo是rust的工程管理工具,使用cargo創(chuàng)建項(xiàng)目后告材,會(huì)默認(rèn)在firstrust/src目錄下創(chuàng)建main.rs文件坤次,該文件內(nèi)容如下:

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

此文件即為firstrust工程的入口文件,類似C語(yǔ)言的main函數(shù)斥赋,這里的main函數(shù)也是rust工程的入口函數(shù)缰猴,執(zhí)行以下命令運(yùn)行該該函數(shù):

cargo run

運(yùn)行結(jié)果如下圖所示:
運(yùn)行結(jié)果

可以看到,程序運(yùn)行后在控制臺(tái)輸出“Hello疤剑,world!”字符串滑绒。
至此,rust相關(guān)工具的安裝工作就完成了隘膘,可以采用個(gè)人比較喜歡的源碼編輯工具(如windows自帶的notepad疑故,或者notepad++、gvim等開源文本編輯器編輯源文件弯菊,然后使用cargo工程管理工具運(yùn)行纵势、調(diào)試rust程序了。

3管钳、VSCode Rust開發(fā)環(huán)境搭建

盡管我們可以采用文本編輯器完成Rust源碼編輯吨悍,然后通過cargo運(yùn)行、調(diào)試rust程序蹋嵌,這對(duì)于學(xué)習(xí)Rust語(yǔ)言足夠了育瓜。但是在實(shí)際應(yīng)用開發(fā)工程中,很少有人采用各種原始的生產(chǎn)方式栽烂,畢竟這中方式生產(chǎn)率實(shí)在是太低了躏仇。所以一般應(yīng)用開發(fā)過程中為了提升生產(chǎn)率恋脚,開發(fā)人員都會(huì)采用IDE(Integration Development Environment,集成開發(fā)環(huán)境)開展實(shí)際的生產(chǎn)開發(fā)工作焰手。Rust官方?jīng)]有提供IDE糟描,我們完全可以采用VSCode + VScode擴(kuò)展的方式搭建一個(gè)輕量級(jí)的IDE。
打開瀏覽器訪問https://code.visualstudio.com/Download书妻,然后根據(jù)操作系統(tǒng)平臺(tái)(目前流行的操作系統(tǒng)一般是64位)船响,點(diǎn)擊64位zip格式的安裝包(個(gè)人比較喜歡用zip格式的安裝包,解壓即可使用)躲履,如下圖所示:

下載VSCode安裝包
下載完成后见间,在某目錄下建立VSCode目錄,將壓縮包中的文件全部解壓到VScode目錄中工猜,然后在VScode目錄下新建data目錄(data目錄與code.exe位于同一目錄)米诉,用于存放VSCode擴(kuò)展安裝相關(guān)文件及數(shù)據(jù),如下圖所示:
vscode安裝目錄
雙擊code.exe打開vscode編輯器篷帅,選擇左側(cè)“擴(kuò)展”工具按鈕史侣,如下圖所示:
VSCode擴(kuò)展管理工具
在顯示“應(yīng)用商店中搜索...”輸入框中輸入Code Runner、rust-analyzer魏身、CodeLLDB惊橱,然后點(diǎn)擊擴(kuò)展表里右下側(cè)的“install”(或者“安裝”)鏈接安裝三個(gè)插件。安裝結(jié)束后如下圖所示:
VSCode安裝擴(kuò)展
點(diǎn)擊主菜單“文件-->打開文件夾”箭昵,選擇firstrust目錄打開firstrust工程税朴。然后點(diǎn)擊左側(cè)資源管理器,展開src目錄宙枷,雙擊main.rs文件打開文件,如下圖所示:
打開main.rs文件
點(diǎn)擊鍵盤上的F5鍵啟動(dòng)VSCode程序調(diào)試器茧跋,提示因?yàn)椴痪邆浜线m的調(diào)試觸發(fā)配置而不能調(diào)試慰丛,點(diǎn)擊“確定”按鈕,如下圖所示:
提示信息
點(diǎn)擊確定后繼續(xù)提示是否生成默認(rèn)調(diào)試配置信息瘾杭,點(diǎn)擊“Yes”按鈕生成Rust調(diào)試配置信息诅病,如下圖所示:
生成默認(rèn)調(diào)試配置
生成默認(rèn)調(diào)試配置信息后,再次點(diǎn)擊F5粥烁,即可在VSCode中運(yùn)行main.js中的main函數(shù)贤笆,并可在控制臺(tái)(main.rs文件編輯器底部)看到“Hello,Word!”字符串輸出,如下圖所示:
程序運(yùn)行結(jié)果

至此VSCode Rust開發(fā)環(huán)境搭建完畢讨阻,注意:
一芥永、VSCode調(diào)試Rust程序需要依賴C++編譯環(huán)境;
二钝吮、VSCode安裝CodeLLDB擴(kuò)展較慢埋涧,需要完成該擴(kuò)展安裝后才能調(diào)試Rust程序板辽;
三、如果控制臺(tái)輸出中文有亂碼棘催,需要調(diào)整操作系統(tǒng)默認(rèn)字符集為UTF-8劲弦,具體調(diào)整步驟:
1、Win鍵(鍵盤左下角有windows操作系統(tǒng)的鍵) + R鍵醇坝,在運(yùn)行中輸入control邑跪,啟動(dòng)控制面板;
2呼猪、在控制面板中選擇”區(qū)間和區(qū)域--->區(qū)域--->管理(標(biāo)簽頁(yè))--->更改系統(tǒng)區(qū)域設(shè)置...(按鈕)--->勾選Beta版:使用Unicode UTF-8提供全球語(yǔ)言支持“画畅,如下圖所示:
更改系統(tǒng)字符集為UTF-8
修改編碼后系統(tǒng)需要重啟才能生效。重啟后再次打開VSCode郑叠,點(diǎn)擊F5鍵啟動(dòng)Rust調(diào)試夜赵,Rust程序輸出的中文不再是亂碼。
下一篇:Rust的標(biāo)準(zhǔn)輸入與輸出

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末乡革,一起剝皮案震驚了整個(gè)濱河市寇僧,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌沸版,老刑警劉巖嘁傀,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異视粮,居然都是意外死亡细办,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門蕾殴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來笑撞,“玉大人,你說我怎么就攤上這事钓觉≤罘剩” “怎么了?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵荡灾,是天一觀的道長(zhǎng)瓤狐。 經(jīng)常有香客問我,道長(zhǎng)批幌,這世上最難降的妖魔是什么础锐? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮荧缘,結(jié)果婚禮上皆警,老公的妹妹穿的比我還像新娘。我一直安慰自己截粗,他們只是感情好耀怜,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布恢着。 她就那樣靜靜地躺著,像睡著了一般财破。 火紅的嫁衣襯著肌膚如雪掰派。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天左痢,我揣著相機(jī)與錄音靡羡,去河邊找鬼。 笑死俊性,一個(gè)胖子當(dāng)著我的面吹牛略步,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播定页,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼趟薄,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了典徊?” 一聲冷哼從身側(cè)響起杭煎,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎卒落,沒想到半個(gè)月后羡铲,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡儡毕,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年也切,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片腰湾。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡雷恃,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出费坊,到底是詐尸還是另有隱情倒槐,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布葵萎,位于F島的核電站导犹,受9級(jí)特大地震影響唱凯,放射性物質(zhì)發(fā)生泄漏羡忘。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一磕昼、第九天 我趴在偏房一處隱蔽的房頂上張望卷雕。 院中可真熱鬧,春花似錦票从、人聲如沸漫雕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)浸间。三九已至太雨,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間魁蒜,已是汗流浹背囊扳。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留兜看,地道東北人锥咸。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像细移,于是被迫代替她去往敵國(guó)和親搏予。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容