Ubuntu环境下以编译源码的方式安装Vim

目录

1. Ubuntu环境

2. 下载编译vim

2.1 效果截图 

3. 配置环境变量


1. Ubuntu环境

Linux chris-166 6.2.0-36-generic #37~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Mon Oct  9 15:34:04 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

2. 下载编译vim

// 源码下载
chris_166@chris-166:~/Tools/Vim$ git clone https://github.com/vim/vim.git// 准备vim编译的依赖环境和对Python库的支持
chris_166@chris-166:~/Tools/Vim$ sudo apt install python3
chris_166@chris-166:~/Tools/Vim$ sudo apt install python3-dev
chris_166@chris-166:~/Tools/Vim$ sudo apt-get install libperl-dev
chris_166@chris-166:~/Tools/Vim$ sudo apt install build-essential python3-dev
// 支持C的外部lua库和正则表达式
chris_166@chris-166:~/Tools/Vim$ sudo apt install lua5.3 -y
chris_166@chris-166:~/Tools/Vim$ sudo apt install liblua5.3-dev -y
chris_166@chris-166:~/Tools/Vim$ sudo apt install libperl-dev -y// 进入到vim源码里进行配置
chris_166@chris-166:~/Tools/Vim/vim$ ./configure \
--with-features=huge \
--prefix=/usr/local/vim \
--with-features=huge \
--enable-fail-if-missing \
--enable-luainterp \
--enable-perlinterp \
--enable-fontset \
--enable-python3interp \
--with-python3-command=python3// 开始编译安装vim
chris_166@chris-166:~/Tools/Vim/vim$ sudo make -j8
chris_166@chris-166:~/Tools/Vim/vim$ sudo make install

2.1 效果截图 

1. ./configure xxx执行成功

 如果执行./configure报如下错误

checking if compile and link flags for Perl are sane... no: PERL DISABLED configure: error: could not configure perl

尝试如下方法解决 

chris_166@chris-166:~/Tools/Vim/vim$ sudo apt update

 chris_166@chris-166:~/Tools/Vim/vim$ sudo apt-get install libperl-dev

2.  sudo make install

3. 配置环境变量

通过上述的"./configure --prefix=/usr/local/vim \"可知其安装目录,接下来进入到"/usr/local/vim"检查下

chris_166@chris-166:/usr/local/vim$ echo 'export PATH="/usr/local/vim/bin:$PATH"' >> ~/.bashrc

至此vim编译安装完成

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/177145.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】手撕双向链表

目录 前言 1. 双向链表 带头双向循环链表的结构 2. 链表的实现 2.1 初始化 2.2 尾插 2.3 尾删 2.4 头插 2.5 头删 2.6 在pos位置之前插入 2.7 删除pos位置 3.双向链表完整源码 List.h List.c 前言 在上一期中我们介绍了单链表,也做了一些练习题&…

langchain实战-hello world

一、LangChain简介 github地址: GitHub - langchain-ai/langchain: ⚡ Building applications with LLMs through composability ⚡ LangChain是一个用于开发由语言模型支持的应用程序的框架。它使应用程序能够: 具有上下文感知能力:将语言模…

【树与二叉树的转换,哈夫曼树的基本概念】

文章目录 树与二叉树的转换将二叉树转化为树森林与二叉树的转化(二叉树与多棵树之间的关系)二叉树转换为森林森林的先序遍历1)先序遍历2)后序遍历 哈夫曼树的基本概念森林转换成二叉树(二叉树与多棵树的关系&#xff0…

修改Conda虚拟环境默认位置失败——解决方案

修改虚拟环境默认安装位置依然❌ 偶然遇到conda创建虚拟环境创建失败的问题,按照教程修改.condarc文件中 envs_dirs:- E:\miniconda3\envs依然无法更改虚拟环境默认安装位置。 解决方案 找到想更改的虚拟环境文件位置,检查确认是否有写入权限&#…

在Python中使用sqlite3进行数据持久化操作

目录 引言 一、安装sqlite3模块 二、创建数据库连接 三、创建游标对象 四、执行SQL命令 五、提交更改 六、关闭连接 七、使用参数化查询 八、使用ORM进行数据操作 九、备份和恢复数据库 十、处理大量数据 十一、优化查询性能 十二、处理并发访问 十三、处理数据持…

小波神经网络的时间序列预测——短时交通流量预测

大家好,我是带我去滑雪! 小波神经网络(Wavelet Neural Network,WNN)结合了小波变换和神经网络的特性,是一种在信号处理和模式识别领域应用广泛的神经网络模型。它的设计灵感来自于小波变换的多尺度分析特性…

JSP注释方式演示 讲解显式与隐式注释

好 今天我们来了解一下jsp中的注释哦 它支持两种注释: 显式注释/隐式注释 显式注释 是 允许被客户端看到的 就是 打开浏览器 用查看源码方式能看到的注释 与之对应 隐式注释 就是 在客户端 是无法看到这些注释信息的 显式注释 的语法就是html的注释语法 <!-- 显式注释 --…

AdaBoost:提升机器学习的力量

一、介绍 机器学习已成为现代技术的基石&#xff0c;为从推荐系统到自动驾驶汽车的一切提供动力。在众多机器学习算法中&#xff0c;AdaBoost&#xff08;Adaptive Boosting的缩写&#xff09;作为一种强大的集成方法脱颖而出&#xff0c;为该领域的成功做出了重大贡献。AdaBoo…

node将package.json中的包降为低版本或者升级为高版本

前言 比如现在你用某个包的当前版本&#xff0c;但是你安装的版本高了&#xff0c;那么你应该这么做 1.首先删除node项目中的node_modules目录&#xff0c;防止安装时的包不一致 如果没安装就忽略 例如将package.json中的view-design包降为^4.6.1,当前view-design的版本为^4.…

解决LX音乐切换音乐来源失败问题

之前免费听歌神器落雪音乐不能用了&#xff0c;原因懂得都懂 LX音乐Github链接 可以通过切换音乐来源进行解决 一、下载自定义音源文件 免费下载链接 下载一 百度网盘&#xff1a;1o7v 下载二 CSDN资源&#xff1a;自定义音源 全部音源文件来源 蓝奏云&#xff1a;8mno 下…

QT QDockWidget

QDockWidget是Qt中的一个容器类&#xff0c;用于在主窗口上创建可停靠的子窗口。 设置停靠窗口的一般流程如下: (1)创建一个QDockWidget 对象的停靠窗体。 (2)设置此停靠窗体的属性&#xff0c;通常调用setFeatures()及setAllowedAreas()两种方法。 (3)新建一个要插入停靠窗…

CentOS修改root用户密码

一、适用场景 1、太久没有登录CentOS系统&#xff0c;忘记管理密码。 2、曾经备份的虚拟化OVA或OVF模板&#xff0c;使用模板部署新系统后&#xff0c;忘记root密码。 3、被恶意攻击修改root密码后的紧急修复。 二、实验环境 1、VMware虚拟化的ESXI6.7下&#xff0c;通过曾经…