Rocky 9 Linux 平台 vim 9.0 源码包编译安装踩坑记录

在上一篇 《vim入门实战》 篇,我并没有介绍 Linux 平台源码包形式安装以及基础运用。
本篇教程,以源码包形式部署vim 9.0,演示 Rocky Linux 9 平台安装 vim 9.0.1523,目前最新版为vim 9.0.15xx。
如下演示均以 root 身份进行。为了安全考虑,默认禁用root 用户远程ssh登录权限,以普通用户作为跳板切换为 root 用户。
vim 9.0 部署准备环境
借助终端管理工具,通过 ssh 登录到终端管理界面(普通用户):
PS D:\work> ssh wzgy@192.168.245.133
wzgy@192.168.245.133's password:
切换为 root 用户:
su root
获取 vim 9.0 源码包:
wget https://github.com/vim/vim/archive/refs/tags/v9.0.1523.tar.gz
如果没有安装 wget 工具,Rocky Linux 9 可以执行如下命令进行安装:
dnf -y install wget
安装前,确认环境,是否安装 make gcc cmake:
[root@localhost soft]# dnf -y install make gcc cmake
根据实际情况而定,可能有的源码包设定需要 cmake 编译。
减少干扰,卸载 Rocky Linux 9 自带的 vim8:
[root@localhost soft]# dnf remove vim
友情提示:实际工作中,你的硬件(CPU、内存、硬盘)不是无限大。以二进制包、源码包、rpm、deb包等等形式安装软件,保留其中一种即可。减少服务器资源争抢,便于管理维护。
vim 9.0 源码包正式部署
正式部署vim9,首先解压 vim:
[root@localhost soft]# tar -zxvf v9.0.1523.tar.gz
进入 src 目录:
[root@localhost soft]# cd vim-9.0.1523/src/
编译:
[root@localhost src]# make
注意事项:看到提示别慌,仔细发现提醒需要 ncurses 依赖。

checking for tgetent()... configure: error: NOT FOUND!
You need to install a terminal library; for example ncurses.
On Linux that would be the libncurses-dev package.
Or specify the name of the library with --with-tlib.
Makefile:291: auto/config.mk: 没有那个文件或目录
make: *** [Makefile:1972:auto/config.mk] 错误 1
在 Rocky Linux 9.1 (RHEL9 系列应该均适用)中可以执行:
dnf -y install ncurses
如果提示:
软件包 ncurses-6.2-8.20210508.el9.x86_64 已安装。
依赖关系解决。
无需任何处理。
完毕!
再次执行 dnf -y install ncurses-devel-6.2-8.20210508.el9:
dnf -y install ncurses-devel-6.2-8.20210508.el9
会继续安装如下两个库文件:
ncurses-c++-libs-6.2-8.20210508.el9.x86_64.rpm
ncurses-devel-6.2-8.20210508.el9.x86_64.rpm
可能你会有疑问,实际过程中,如何判断安装包是哪一个 Linux 具体发行版本?其实可以根据安装包命名规则区分,可以看到以上安装包中都含有 el9 ,代表所处 Linux 发行版平台为 RHEL9 系列。
继续编译:
[root@localhost src]# make
安装:
make install
如果直接执行 vim:
vim
输出结果:会进入一个含有vim 当前版本以及维护人的信息。当然还含有公益广告,开源软件可以自行选择删除或者保留。
vim 9.0 初体验
执行 vim file.txt 进行编辑,输入一段内容 hello vim 9.0.153:
vim test.txt
按下快捷键:i ,插入如下内容:
*
**
***
*****
*******
*************************
采用源码包形式编译安装!
hello vim 9.0.1523
*************************
*******
*****
***
**
*
test.txt 代表你需要编辑的文件。
使用快捷键: a i o 即可插入内容,使用 :wq 进行保存并退出当前文件。
终端展示输出文件 test.txt 内容:
cat test.txt
如果你有足够的英语词汇量,使用 vim 自带帮助命令效率会很高。
继续编辑 test.txt 文件:
vim test.txt
示例使用 vim 帮助命令,含义直接写入代码块注释中:
:help #查看全局帮助命令文档
:help vs #查看局部水平分屏命令文档
:help sp #查看局部垂直分屏命令文档
关闭所有窗口,强制(加上!符号)不保存退出,使用快捷键: :qa!,保存退出所有窗口: :wqa 。
更多 vim 快捷键使用方法,可以在公众号或者站内搜索:vim入门实战。
默认安装后相关配置文件路径:
[root@localhost src]# ls /usr/local/share/
applications info man vim
默认 vim 脚本文件路径:
ls /usr/local/bin/vim
vim 脚本会去寻找defaults.vim,默认所在路径:/usr/local/share/vim/vim90/defaults.vim,也就是源码包经过编译、安装后生成的文件。
plug-vim 安装插件
Rocky 9 Linux 平台如下操作
wget https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
--directory-prefix=/usr/local/share/vim/vim90/autoload/
下载文件,如何指定保存路径?通过帮助文档查询:
[root@localhost ~]# wget --help | grep "保存文件"
-P, --directory-prefix=前缀 保存文件到 <前缀>/..
如果没有 wget 工具,请先安装:
dnf -y install wget
安装 vim-plug 插件后,加入如下内容即可安装 nerdtree 和 tagbar 插件:
set number
call plug#begin()
Plug 'preservim/nerdtree'
Plug 'preservim/tagbar'
call plug#end()
个人认为,这两个插件还是很实用的,尤其是浏览代码。
如果想 tagbar 正常运行,还需安装:
dnf -y install ctags
执行插件安装命令:
:PlugInstall
插件安装后,重启vim即可生效。
安装插件效果展示,最左侧是nerdtree效果,最右侧是tagbar效果。
示例:
vim Test.java
:NERDTree
:Tagbar

以上总结,仅供参考哟,希望对你的工作有所帮助!
—END—
Rocky 9 Linux 平台 vim 9.0 源码包编译安装踩坑记录的更多相关文章
- CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作
CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614 使用yum安装的MySQL一般版本比较旧,但 ...
- MySQL源码包编译安装
+++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库实力部署时间:2019年3月9日内容:MySQL源码包进行编译,然后部署MySQL单实例重点 ...
- CentOS 7.4 使用源码包编译安装MySQL 5.7.20
使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了. 一.下载安装包 (一).先下载MySQL源码,网址为:https: ...
- LAMP 环境搭建之源码包编译安装
mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46 Apache版本2.4.7 PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...
- MYSQL5.5源码包编译安装
MYSQL5.5源码安装首先安装必要的库yum -y install gcc*###### 安装 MYSQL ######首先安装camke 一.支持YUM,则yum install -y cmake ...
- MYSQL5.7源码包编译安装
Centos下用cmake编译安装MySQL 5.7安装依赖包yum -y install gcc gcc-c++ ncurses ncurses-devel cmake下载相应源码包cd /usr/ ...
- PHP-5.6.8 源码包编译安装
一.下载源码包后,进行解压 [root@www home]# .tar.bz2 gzip: stdin: not in gzip format tar: Error is not recoverabl ...
- Debian 7 amd64--TP-LINK TL-WN725N 2.0源码驱动编译安装
租房用的是无线网络,在新安装的Debian 7 amd64使用的无线网卡型号是TP-LINK TL-WN725N 2.0,发现驱动安装还是有些问题,折腾了很久,特意在此记录一下. TL-WN725N ...
- MYSQL5.6源码包编译安装
linux下用cmake编译安装mysql-5.6.35cmake编译安装mysql的方法:#useradd -M mysql -s /sbin/nologin#yum install -y cmak ...
- tomcat7源码包编译安装
tomcat/:作用解析jsp程序.先安装jdk容器.1.下载jdk, wget http://download.oracle.com/otn- pub/java/jdk/8u131- b11/d54 ...
随机推荐
- Spring-设计模式
1.1开闭原则 开闭原则(open-closed principle,OCP)是指一个软件实体(如类,模块和函数)应该对扩展开放,对修改关闭.所谓的开闭,也正是对扩展和修改两个行为的一个原则. 强调用 ...
- vsftpd配置FTP服务器(Centos7.x安装)
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | grep vsftpdvsftpd-2.2.2-24.el6.x86_64 如果有展示则已经安装,不需要重新安装 ...
- 【OGF生成函数板子题】牛客编程巅峰赛S2第11场 C 挑选方案问题
upd 2022-01-26 我找到了个题集 牛客竞赛数学专题班生成函数I(线性递推关系.生成函数概念与公式推导.暴力计算) 目录 题目链接 题面 解题思路 AC代码 题目链接 https://ac. ...
- Java面试——缓存
一.什么是缓存 [1]缓存就是数据交换的缓冲区(称作:Cache),当某一硬件要读取数据时,会首先从缓存中查询数据,有则直接执行,不存在时从磁盘中获取.由于缓存的数据比磁盘快的多,所以缓存的作用就是帮 ...
- JVM——锁
对象头[每个对象都具有对象头] Mark:对象头的标记(32位),描述对象的 hash.锁信息.垃圾回收标记.年龄:内容包括:①.指向锁记录的指针:②.指向 monitor 的指针:③.GC 标记:④ ...
- Schillace 定律 背后的 Sam Schillace
微软semantic-kernel(SK)团队发布了一篇博客文章:Early Lessons From GPT-4: The Schillace Laws[1] ,微软的CVP , Deputy CT ...
- MYSQL DQL语句(基础)
MySQL引入 数据库的好处 持久化数据到本地 可以实现结构化查询,方便管理 数据库的相关概念 DB:数据库(database):存储数据的"仓库",它保存了一系列有组织的数据. ...
- 原来还能这样看Java线程的状态及转换
作者:小牛呼噜噜 | https://xiaoniuhululu.com 计算机内功.JAVA底层.面试.职业成长相关资料等更多精彩文章在公众号「小牛呼噜噜」 大家好,我是呼噜噜,最近一直在梳理Jav ...
- PHP 微信三方平台代公众号发起网页授权 获取用户信息
1.获取code 2.通过授权回调地址的code获取用户access_token和open_id 3.通过access_token和open_id 获取用户基本信息 class wx_user { p ...
- 19.3 对FAT的支持(harib16c)
19.3 对FAT的支持(harib16c) 问题:可以正确显示文件开头的512字节的内容,但大于512字节的部分不能正确显示(可能会显示其他文件). 问题本质:磁盘可能将大于512字节的文件离散的保 ...