使用Rust語(yǔ)言編寫(xiě)一個(gè)ChatGPT桌面應(yīng)用示例詳解
為什么我們需要一個(gè)桌面應(yīng)用
原因?qū)嵲谔啵覀冃枰憬莸貙?dǎo)出記錄,需要在回答長(zhǎng)度超長(zhǎng)的時(shí)候自動(dòng)加上“繼續(xù)”,需要收藏一些很酷很實(shí)用的prompt......
(首先我假設(shè)你是一名如我一樣習(xí)慣用IDEA開(kāi)發(fā)的java仔)
為什么是用Rust編寫(xiě)
- 效率高、資源占用量低。
- 安全性高:Rust 是一種內(nèi)存安全的語(yǔ)言,其所有操作都經(jīng)過(guò)系統(tǒng)級(jí)別的嚴(yán)格代碼檢查,減少了運(yùn)行期間的崩潰和內(nèi)存泄漏等問(wèn)題的出現(xiàn)。
- 可維護(hù)性高:Rust 能夠更好地編寫(xiě)可維護(hù)的代碼,并且支持面向?qū)ο缶幊毯秃瘮?shù)式編程,這使得開(kāi)發(fā)人員能夠更好地組織代碼,易于理解和修改。同時(shí),Rust 的模塊化設(shè)計(jì)使得不同的開(kāi)發(fā)人員可以同時(shí)在項(xiàng)目中工作,而不會(huì)相互干擾。
- 跨平臺(tái):Rust 廣泛支持多種操作系統(tǒng)和平臺(tái),包括 Windows,macOS,Linux 和 Android 等,這使得開(kāi)發(fā)人員能夠設(shè)計(jì)適用于不同平臺(tái)和設(shè)備的應(yīng)用。
如何用Rust編寫(xiě)一個(gè)桌面應(yīng)用
1.安裝 Rust 語(yǔ)言工具鏈:首先,請(qǐng)確保你已安裝了 Rust 編程語(yǔ)言工具鏈,包括 Rust 編譯器 (rustc) 和包管理工具 (cargo)。可以通過(guò)訪問(wèn) Rust 官方網(wǎng)站 并遵循說(shuō)明來(lái)安裝。

2.安裝 Rust 插件:打開(kāi) IntelliJ IDEA,然后轉(zhuǎn)到 "File" > "Settings" (Windows/Linux) 或 "IntelliJ IDEA" > "Preferences" (macOS)。在設(shè)置窗口中,選擇 "Plugins",搜索 "Rust",然后單擊 "Install"。安裝完成后,重啟 IntelliJ IDEA。
3.創(chuàng)建新的 Rust 項(xiàng)目:在 IntelliJ IDEA 中,選擇 "File" > "New" > "Project",然后在項(xiàng)目類(lèi)型列表中選擇 "Rust"。按照提示配置項(xiàng)目設(shè)置,然后單擊 "Finish" 以創(chuàng)建新項(xiàng)目。
4.添加 GUI 庫(kù):你可以選擇的 GUI 庫(kù)(如 GTK 或 Qt),在項(xiàng)目的 Cargo.toml 文件中添加相應(yīng)的依賴(lài)項(xiàng)。例如,對(duì)于 GTK,需要添加如下依賴(lài):
5.[dependencies] gtk = "0.9"
6.編寫(xiě)代碼:使用 IntelliJ IDEA 編輯器編寫(xiě) Rust 代碼。Rust 插件會(huì)提供代碼補(bǔ)全、語(yǔ)法高亮、錯(cuò)誤提示等功能。
7.構(gòu)建和運(yùn)行:使用 IntelliJ IDEA 的內(nèi)置終端或外部終端運(yùn)行cargo build和cargo run命令,以構(gòu)建和運(yùn)行你的 Rust 桌面應(yīng)用程序。
保姆教程的試錯(cuò)與驗(yàn)證
為了驗(yàn)證這個(gè)流程是否足夠保姆級(jí),我提前發(fā)給同事操作了一遍,最后在cargo run這里報(bào)錯(cuò)沒(méi)有g(shù)lib-2.0。這是因?yàn)樵?macOS 上運(yùn)行包含gtk依賴(lài)項(xiàng)的 Rust 項(xiàng)目時(shí),需要先在系統(tǒng)上安裝 GTK+ 和相關(guān)庫(kù)。
可以通過(guò)使用 Homebrew 包管理器來(lái)解決這個(gè)問(wèn)題。請(qǐng)按照以下步驟操作:
- 如果尚未安裝 Homebrew,請(qǐng)?jiān)L問(wèn) Homebrew 官方網(wǎng)站 并按照說(shuō)明進(jìn)行安裝。
- 打開(kāi)終端并運(yùn)行以下命令以安裝 GTK+ 及其依賴(lài)庫(kù):
- brewinstallgtk+3 brewinstalladwaita-icon-theme
- 安裝 pkg-config 工具:
- brewinstallpkg-config
- 設(shè)置環(huán)境變量,讓 Rust 編譯器和鏈接器能夠找到 GTK+ 庫(kù)。在 shell 配置文件中(如~/.bashrc、/.zshrc、/.zshrc等),添加以下行:
- exportPKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
- 保存更改并重新加載 shell 配置文件,以使更改生效。比如你修改了~/.zshrc,則應(yīng)運(yùn)行以下命令:
- source~/.zshrc

Rust編寫(xiě)的桌面應(yīng)用效果示例
當(dāng)你看到這個(gè)hello world,就已經(jīng)成功一大半了。因?yàn)橐呀?jīng)有大佬開(kāi)源了一套GitHub - lencx/ChatGPT: ?? ChatGPT Desktop Application (Mac, Windows and Linux)目前star過(guò)3w。很可惜的是,由于被盜用和潛在的法務(wù)風(fēng)險(xiǎn),后續(xù)更新就不開(kāi)源了,大家也可以基于這個(gè)版本發(fā)揮自己的創(chuàng)造力了。下圖就是提供了便捷下載的一個(gè)示例。

以上就是使用Rust語(yǔ)言編寫(xiě)一個(gè)ChatGPT桌面應(yīng)用示例詳解的詳細(xì)內(nèi)容,更多關(guān)于Rust編寫(xiě)ChatGPT桌面應(yīng)用的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
rust開(kāi)發(fā)環(huán)境配置詳細(xì)教程
rust是一門(mén)比較新的編程語(yǔ)言,2015年5月15日,Rust編程語(yǔ)言核心團(tuán)隊(duì)正式宣布發(fā)布Rust 1.0版本,這篇文章主要介紹了rust開(kāi)發(fā)環(huán)境配置 ,需要的朋友可以參考下2022-12-12
vscode搭建rust開(kāi)發(fā)環(huán)境的圖文教程
本文主要介紹了vscode搭建rust開(kāi)發(fā)環(huán)境的圖文教程,文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08
Rust生命周期之驗(yàn)證引用有效性與防止懸垂引用方式
本文介紹了Rust中生命周期注解的應(yīng)用,包括防止懸垂引用、在函數(shù)中使用泛型生命周期、生命周期省略規(guī)則、在結(jié)構(gòu)體中使用生命周期、靜態(tài)生命周期以及如何將生命周期與泛型和特質(zhì)約束結(jié)合,通過(guò)這些機(jī)制,Rust在編譯時(shí)就能捕獲內(nèi)存安全問(wèn)題2025-02-02
Rust語(yǔ)言數(shù)據(jù)類(lèi)型的具體使用
在Rust中,每個(gè)值都有一個(gè)明確的數(shù)據(jù)類(lèi)型,本文主要介紹了Rust語(yǔ)言數(shù)據(jù)類(lèi)型的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04
使用vscode配置Rust運(yùn)行環(huán)境全過(guò)程
VS Code對(duì)Rust有著較完備的支持,這篇文章主要給大家介紹了關(guān)于使用vscode配置Rust運(yùn)行環(huán)境的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-06-06
Rust 語(yǔ)言中的dyn 關(guān)鍵字及用途解析
在Rust中,"dyn"關(guān)鍵字用于表示動(dòng)態(tài)分發(fā)(dynamic dispatch),它通常與trait對(duì)象一起使用,以實(shí)現(xiàn)運(yùn)行時(shí)多態(tài), 在Rust中,多態(tài)是通過(guò)trait和impl來(lái)實(shí)現(xiàn)的,這篇文章主要介紹了Rust 語(yǔ)言中的 dyn 關(guān)鍵字,需要的朋友可以參考下2024-03-03

