当前位置: 首页 > news >正文

工具的应用——安装copilot

一、介绍Copilot

copilot是一个AI辅助编程的助手,作为需要拥抱AI的程序员可以从此尝试进入,至于好与不好,应当是小马过河,各有各的心得。这里不做评述。重点在安装copilot的过程中遇到了一些问题,然后把它总结下,供人借鉴。
工作的环境为ubuntu22.04,主要需要适配Qtcreator和VsCode。如果使用更高的版本安装会更简单,具体细节请参看下面的表述。

二、安装

1、QtCreator
第一步:升级QtCreator到15(13,14也可以),直接在QtCreator中升级“工具-Qt Maintenace”,里面的两个子菜单哪个都可以,最终都是可以升级的。需要说明的是,如果让你升级才能更新,一定要先升级(直接按界面要求点击下一步即可 )。
此处的麻烦在于,使用这种方式可能太慢,可以使用命令行的方式,到Qt安装的目录下,找到MaintenanceTool程序,打开终端:

./MaintenanceTool --mirror https://mirrors.ustc.edu.cn/qtproject  #其它的镜像也可以

第二步,安装Nodejs(18及以上,如已安装可略过)
sudo apt update
sudo apt install nodejs
第三步,安装neovim(vim版本必须为9及以上,如已安装可略过)
sudo apt install neovim
第四步,下载copilot.vim
git clone git@github.com:github/copilot.vim.git
mkdir -p ~/.vim/pack/github/start/
ln -s realpath ./copilot.vim ~/.vim/pack/github/start/copilot.vim
ls -l ~/.vim/pack/github/start/

mkdir -p ~/.config/nvim/pack/github/start/
ln -s realpath ./copilot.vim ~/.config/nvim/pack/github/start/copilot.vim
第五步,配置copilot:
打开vim或Neovim ,输入:Copilot setup (也可以查看相关帮助 :help copilot)
此时界面中会出现一个Device的码,同时自动打Github网页,把这个码拷贝到网页中(如果需要登录,请输入Github帐号和密码,注意Github的2FA)。点击确定即可。
第五步,配置QtCreator
在QtCreator中首先要启用copilot这个插件,在“帮助-关于插件”中,搜索copilot将其点成可用:
在这里插入图片描述

再打开“编辑-Preferences”,在对话框左侧找到copilot选项,会出现:
在这里插入图片描述

程序会自动的进行登录,然后变成“Sign out name”。
第七步,重启QtCreator并开始使用copilot
重启后即可使用copilot的相关功能。

2、VsCode
在VsCode中安装copilot非常简单只需要登陆Github,在界面左上角中找到copilot,点击进入。找到支持VsCode的选项(默认就是它),然后拷贝命令到VsCode命令面板(CTRL+P),执行即可自动安装。安装成功即可使用,非常简单,就不再赘述。

三、升级问题

在高版本的Ubuntu上如上述安装即可正常使用,但在ubuntu22.04中,首先需要升级Nodejs和vim(和neovim)。否则在打开vim时会自动提示相关版本过低。
1、升级VIM

sudo add-apt-repository ppa:jonathonf/vim
sudo apt-get update
sudo apt-get install vimsudo apt-add-repository ppa:neovim-ppa/stable
sudo apt-get update
sudo apt-get install neovim

这个没有太大问题,问题可能就是稍微慢一些,但可以忍受。
2、升级NodeJs
先看升级的过程,因为直接安装使用“apt upgrade”会导致所有的软件升级,肯定是不能这么做。所以问了下AI,得到的方法如下:

VERSION=node_18.x
DISTRO=$(lsb_release -s -c)
echo "deb https://deb.nodesource.com/$VERSION $DISTRO main" | sudo tee /etc/apt/sources.list.d/nodesource.listsudo apt install nodejs

结果安装过程中断,报一个错误“正试图覆盖 /usr/include/node/common.gypi,它同时被包含于软件包 libnode-dev 12”,这个比较麻烦,在网上找到的解决方法是:

sudo apt remove --purge nodejs (或libnode-dev)
sudo apt autoremove

看到后面的命令没,胆小了,没敢执行。上次就把libwrap0-dev给卸载了,导致生产项目无法编译通过。所以只执行了第一个命令,再安装:

sudo apt install nodejs(或 sudo apt install -y libnode-dev)

报下面的错误,“正试图覆盖 /usr/share/systemtap/tapset/node.stp,它同时被包含于软件包 libnode”,手动删除了这个文件,再次安装还是不行,后来查了很多资料都说需要执行autoremove,然后看了下相关的内容,没有wrap,反正即使删除了也知道如何再恢复,所以执行了"sudo apt autoremove"。
再安装,成功。
成功后的第一件事就是赶紧回到原来的工程,编译是否可以通过,事实证明确实没有问题。这才算正常安装完成。

四、总结

综上所述,版本的问题始终是一个非常麻烦的问题。此处如果是高版本的Ubuntu(同事是较新的Debian),安装就简单了许多。这里的问题是,网上的资料都是让在QtCreator中配置中直接“Sign in ”,但实际是在VIM中进行。这导致了一个反复重启和不知所以的操作问题。还是没找到具体的文档,当为之鉴!

http://www.lryc.cn/news/529885.html

相关文章:

  • Koa 基础篇(二)—— 路由与中间件
  • 帆软 FCA -业务分析师认证学习
  • Miniconda 安装及使用
  • solidity高阶 -- Eth支付
  • 深入理解Java中的String
  • 洛谷 P1734 最大约数和 C语言
  • Golang 执行流程分析
  • python学opencv|读取图像(五十一)使用修改图像像素点上BGR值实现图像覆盖效果
  • Flask数据的增删改查(CRUD)_flask删除数据自动更新
  • kamailio-ACC模块介绍【kamailio6.0. X】
  • 数据库对象
  • EtherCAT主站IGH-- 27 -- IGH之globals.h文件解析
  • 2025多目标优化创新路径汇总
  • 15JavaWeb——Maven高级篇
  • 使用Ollama本地化部署DeepSeek
  • 蓝桥杯刷题DAY1:前缀和
  • 【基于SprintBoot+Mybatis+Mysql】电脑商城项目之用户注册
  • MINIRAG: TOWARDS EXTREMELY SIMPLE RETRIEVAL-AUGMENTED GENERATION论文翻译
  • 微服务入门(go)
  • Baklib揭示内容中台实施最佳实践的策略与实战经验
  • C++11新特性之lambda表达式
  • 洛谷 P10289 [GESP样题 八级] 小杨的旅游 C++ 完整题解
  • 使用 Tauri 2 + Next.js 开发跨平台桌面应用实践:Singbox GUI 实践
  • JWT入门
  • Python - Quantstats量化投资策略绩效统计包 - 详解
  • 智慧园区管理系统推动企业智能运维与资源优化的全新路径分析
  • 【数据结构-字典树】力扣14. 最长公共前缀
  • 《深入浅出HTTPS​​​​​​​​​​​​​​​​​》读书笔记(31):HTTPS和TLS/SSL
  • Go学习:Go语言中if、switch、for语句与其他编程语言中相应语句的格式区别
  • L30.【LeetCode笔记】设计链表