"Settings" (Windows/Linux) 或" />
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用Rust编写一个ChatGPT桌面应用(保姆级教程)

京东云 来源:jf_75140285 作者:jf_75140285 2024-09-25 11:19 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

为什么我们需要一个桌面应用
原因实在太多,我们需要便捷地导出记录,需要在回答长度超长的时候自动加上“继续”,需要收藏一些很酷很实用的prompt......
(首先我假设你是一名如我一样习惯用IDEA开发的java仔)

安装 Rust 语言工具链:首先,请确保你已安装了 Rust 编程语言工具链,包括 Rust 编译器 (rustc) 和包管理工具 (cargo)。可以通过访问 Rust 官方网站 并遵循说明来安装。

wKgZombzgUyAERszAAIgF_o0toY379.png

安装 Rust 插件:打开 IntelliJ IDEA,然后转到 "File" > "Settings" (Windows/Linux) 或 "IntelliJ IDEA" > "Preferences" (macOS)。在设置窗口中,选择 "Plugins",搜索 "Rust",然后单击 "Install"。安装完成后,重启 IntelliJ IDEA。

创建新的 Rust 项目:在 IntelliJ IDEA 中,选择 "File" > "New" > "Project",然后在项目类型列表中选择 "Rust"。按照提示配置项目设置,然后单击 "Finish" 以创建新项目。

添加 GUI 库:你可以选择的 GUI 库(如 GTK 或 Qt),在项目的 Cargo.toml 文件中添加相应的依赖项。例如,对于 GTK,需要添加如下依赖:

[dependencies]
gtk = "0.9"

编写代码:使用 IntelliJ IDEA 编辑器编写 Rust 代码。Rust 插件会提供代码补全、语法高亮、错误提示等功能。

构建和运行:使用 IntelliJ IDEA 的内置终端或外部终端运行 cargo build 和 cargo run 命令,以构建和运行你的 Rust 桌面应用程序。

为了验证这个流程是否足够保姆级,我提前发给学弟操作了一遍,最后在 cargo run 这里报错没有glib-2.0
这是因为在 macOS 上运行包含 gtk 依赖项的 Rust 项目时,需要先在系统上安装 GTK+ 和相关库。可以通过使用 Homebrew 包管理器来解决这个问题。请按照以下步骤操作:

如果尚未安装 Homebrew,请访问 Homebrew 官方网站 并按照说明进行安装。

打开终端并运行以下命令以安装 GTK+ 及其依赖库:

brew install gtk+3
brew install adwaita-icon-theme

安装 pkg-config 工具:

brew install pkg-config

设置环境变量,让 Rust 编译器和链接器能够找到 GTK+ 库。在 shell 配置文件中(如 ~/.bashrc、 ~/.zshrc、~/.zshrc 等),添加以下行:

export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"

保存更改并重新加载 shell 配置文件,以使更改生效。比如你修改了 ~/.zshrc,则应运行以下命令:

source ~/.zshrc
wKgZombzgUyAIEgfAALPjY2wRqA928.png

当你看到这个hello world,就已经成功一大半了。
因为已经有大佬开源了一套 https://github.com/lencx/ChatGPT 目前star过3w
很可惜的是,由于被盗用和潜在的法务风险,后续更新就不开源了,大家也可以基于这个版本发挥自己的创造力了。

wKgaombzgU6AXOmvAAhMMevkk3M008.png


上图就是提供了便捷下载的一个示例。

大家如果想基于这个版本开发,或者有别的使用过程中的问题,欢迎交流。剩下的那就等下次更新了~

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Rust
    +关注

    关注

    1

    文章

    240

    浏览量

    7477
  • ChatGPT
    +关注

    关注

    31

    文章

    1596

    浏览量

    10072
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    医院手持PDA移动护理工作站的保姆操作使用手册

    专为医院护士打造的移动护理PDA保姆使用指南。从硬件按键认识到扫码查房、输液三查七对实战,再到设备保养技巧,帮助新手护士快速掌握移动护理工作站操作,提升护理效率,保障医疗安全。
    的头像 发表于 12-01 12:02 226次阅读
    医院手持PDA移动护理工作站的<b class='flag-5'>保姆</b><b class='flag-5'>级</b>操作使用手册

    关于PDA手持终端的保姆采购指南

    PDA手持终端不同于普通消费手机,它属于工业生产力工具,选错型号会导致扫描慢、系统卡顿、甚至无法适配软件。本文将从需求定位、购买渠道、品牌推荐三维度,为你提供保姆的采购指南。
    的头像 发表于 11-28 11:48 85次阅读
    关于PDA手持终端的<b class='flag-5'>保姆</b><b class='flag-5'>级</b>采购指南

    2025开放原子开发者大会旋武开源社区Rust分论坛成功举办

    11月22日,2025开放原子开发者大会——旋武开源社区Rust分论坛在北京顺利召开。论坛以“共建中国Rust生态”为核心主题,汇聚京东、华为、vivo、阿里、毛豆教育、DORA社区及南京大学等企业与学术机构技术专家,及众多Rust
    的头像 发表于 11-27 14:55 314次阅读

    桌面CNC,3D打印后的下一个爆款市场?

    。   在创客工具领域,CNC 设备与 3D 打印、激光切割并称为 “三大桌面加工神器”,但三者的普及度却存在明显差距。3D 打印与激光切割已快速渗透大众视野,走进创客空间、中小企业甚至家庭,而桌面 CNC 长期受困于三大痛点
    的头像 发表于 11-04 09:20 2688次阅读

    RT-Thread 遇上 Rust:安全内核 RusT-Thread 的诞生

    大家好,我们是中国科学技术大学操作系统原理与设计(H)课oooooS小组。这个项目是我们的课程大作业:参考RT-Thread架构,使用Rust搭建原生的嵌入式操作系统内核。初识Rust
    的头像 发表于 08-02 11:03 3206次阅读
    RT-Thread 遇上 <b class='flag-5'>Rust</b>:安全内核 <b class='flag-5'>RusT</b>-Thread 的诞生

    请问OpenVINO™ 是否支持 Rust 绑定?

    无法确定OpenVINO™是否支持 Rust 绑定。
    发表于 06-25 07:45

    何用QT开发USB3.0上位机?

    何用QT开发USB3.0上位机
    发表于 05-21 06:54

    和安信可Ai-M61模组对话?手搓ChatGPT 语音助手 #人工智能 #

    ChatGPT
    jf_31745078
    发布于 :2025年03月12日 15:56:59

    OpenAI尝试减少对ChatGPT的审查

    近日,OpenAI宣布了项新政策,旨在改变其训练人工智能模型的方式,以明确拥护“知识自由”的理念。OpenAI强调,无论话题多么具有挑战性或争议性,都应当被平等对待和呈现。 据OpenAI表示
    的头像 发表于 02-17 14:42 3628次阅读

    挑选桌面PCB雕刻机,让创意与实用并存!

    、操作简便、成本低廉等特点,受到了越来越多小型企业和个人用户的青睐。然而,面对市场上琳琅满目的桌面PCB雕刻机产品,如何选择款适合自己需求的雕刻机,成为了
    的头像 发表于 02-12 11:24 1153次阅读
    挑选<b class='flag-5'>桌面</b><b class='flag-5'>级</b>PCB雕刻机,让创意与实用并存!

    JavaScript与Rust和WebAssembly集成

    偶然次机会,接触了Rust的代码。当时想给团队小伙伴做演示,发现自己并不能在移动端按照文档生成演示demo。我就想,要是Rust代码能转化成JavaScript就好了。结果搜,还真
    的头像 发表于 01-24 15:43 795次阅读
    JavaScript与<b class='flag-5'>Rust</b>和WebAssembly集成

    Tomcat 保姆安装教程

    华为云 Flexus 云服务是新代开箱即用、体验跃、面向中小企业和开发者打造的高品价比云服务产品。Flexus 云服务器 X 实例是华为云 Flexus 云服务的产品。
    的头像 发表于 01-18 11:05 727次阅读
    Tomcat <b class='flag-5'>保姆</b><b class='flag-5'>级</b>安装教程

    OpenAI更新macOS ChatGPT应用,推出“代理”功能实现无缝集成

    ”功能的推出。通过这功能,ChatGPT能够作为用户的得力助手,在支持的第三方应用程序中读取屏幕信息,并根据上下文提供精准的帮助和建议。无论是编写代码、记录笔记还是处理文档,用户都能享受到C
    的头像 发表于 01-02 10:49 940次阅读

    OpenAI桌面ChatGPT新增应用协作功能

    近日,OpenAI宣布了项重要更新,为桌面ChatGPT推出了“与应用协作”(Work With Apps)功能。这新功能旨在支持原生应用程序的自动化协作,为用户带来更加高效和便
    的头像 发表于 12-23 10:52 928次阅读

    ChatGPT深度融入苹果Mac软件生态

    ,OpenAI推出了MacOS桌面应用程序,使得用户能够在Mac上更加便捷地查看和自动化他们的ChatGPT工作。这一桌面应用程序不仅具备出色的兼容性和稳定性,还提供了丰富的功能选项,满足了用户多样化的需求。 更重要的是,
    的头像 发表于 12-23 10:50 1008次阅读