从源码Build vim以及打包.deb
How to build vim
1. Build步骤
git clone --depth https://github.com/vim/vim.git # download the source code
cd vim/src
make distclean # clean workspace if you build vim before
./configure --enable-pythoninterp --enable-rubyinterp --enable-python3interp \
--enable-perlinterp --enable-luainterp --with-compiledby --enable-tclinterp # can be ommited if do not used these features
make
sudo make install # install the build bin to system file path
注意:
1) Build 之前可以先把旧版本的vim卸掉
sudo apt-get remove vim-common vim-gnome vim-runtime vim-tiny vim-gtk
2) 安装Build vim需要的依赖 (未确认不安装是否可以)
sudo apt-get build-dep vim (若有依赖问题用aptitude来解决)
3) 若提示需要安装ncurses,执行命令即可:sudo apt-get install libncurses-dev4) 若需要安装到不同的目录(默认是/usr/local/bin),configure是加上参数 --prefix=/somewhere/else/than/usr/local
2. 如何确认Build成功呢:
1) 打开vim,界面显示 version 7.4.2161 (最新的版本号)
2) vim --version 检测版本号以及compile时间
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Aug 6 2016 16:04:21)
...
3) :version 同样检测版本号以及compile时间
version 7.4. (before)
version 7.4. (now)
version 7.4. (macvim)
最新版本不稳定,gvim会出现光标停留的问题,经测试,7.4.1655版本可以用。
3. 怎么制作deb安装包呢?
./configure # 按上面的做法加上必要的参数
make # Build
sudo checkinstall -D
make install # create a deb and install to system (Updated)
它会在当前目录下生成一个*.deb的文件,然后也默认安装到系统中去了。copy到别的电脑,sudo dpkg -i *.deb就能安装vim了。
4. 一些感想
很开心,一直困扰我的gvim选择时丢掉最后一个字符的bug终于不存在了,还有,我终于学会怎么从源码Build vim了,这就意味着我可以随时保证我的vim是最新版本的,一旦有什么bug修复,我都能及时更新我的vim!
Refer to:
1. https://csdaixie.site/2017/build-pack-vim/
从源码Build vim以及打包.deb的更多相关文章
- vue打包时,assets目录 和static目录下文件的处理区别(nodeModule中插件源码修改后,打包后的文件应放在static目录)
为了回答这个问题,我们首先需要了解Webpack如何处理静态资产.在 *.vue 组件中,所有模板和CSS都会被 vue-html-loader 及 css-loader 解析,并查找资源URL.例如 ...
- 从源码构建Vim
从源码构建Vim 引言 事情是介样滴,因为我是个Vim 重度使用者了差不多.. 但在大部分系统上能安装到的或者自带的都是比较老的版本,可能是7.x 之类的.也或者是你需要使用到Vim 的某些特性或者功 ...
- 创作gtk源码级vim帮助文档 tags
创作gtk源码级vim帮助文档 tags 缘由 那只有看到源码了.在linux源码上有个网站 http://lxr.linux.no /+trees, 可以很方面的查出相应版本的代码实现,gtk没有. ...
- 内核源码阅读vim+cscope+ctags+taglist
杜斌博客:http://blog.db89.org/kernel-source-read-vim-cscope-ctags-taglist/ 武特博客:http://edsionte.com/tech ...
- neo4j源码分析1-编译打包启动
date: 2018-03-22 title: "neo4j源码分析1-编译打包启动" author: "邓子明" tags: - 源码 - neo4j - 大 ...
- 庖丁解牛-----Live555源码彻底解密(RTP打包)
本文主要讲解live555的服务端RTP打包流程,根据MediaServer讲解RTP的打包流程,所以大家看这篇文章时,先看看下面这个链接的内容; 庖丁解牛-----Live555源码彻底解密(根据M ...
- 源码编译vim
目录 获取最新版 vim 源码 1 git仓库clone 2, 源码包下载,里面有各个版本的vim压缩包 vim 配置选项 配置示例 参考文章 tip 获取最新版 vim 源码 1 git仓库clon ...
- Android : 修改内核源码 and 编译、打包成新的boot.img
一.Android内核源码的下载: 1.Google GIT地址: $ git clone https://android.googlesource.com/kernel/common.git $ g ...
- 记一次UE4源码编译和游戏项目打包过程
1.首先我们需要注册一个Epic账户,网址如下 http://api.unrealengine.com/CHN/GettingStarted/Installation/index.html#bookm ...
随机推荐
- [转]C# and the using Statement in 3 seconds and a bug in Reflector
Using() Statement in 3 seconds and a bug in Reflector The boring, known accross the board definition ...
- 云优化的概念、Entity Framework 7.0、简单吞吐量压力测试
云优化的概念.Entity Framework 7.0.简单吞吐量压力测试 继续上一篇<开发 ASP.NET vNext 初步总结(使用Visual Studio 2014 CTP1)>之 ...
- CString转换为const char*
CString str=_T("这是我的测试程序.");// 先得到要转换为字符的长度const size_t strsize=(str.GetLength()+1)*2; // ...
- NoSql数据库使用
NoSql数据库使用半年后在设计上面的一些心得 NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么 ...
- D6
今天依旧很惨...本来第二题可以A的,感觉很久没有碰数学,出现这样的低级错误,简直逗了...晚上的话打算找了书店,静下心来看点书进去吧 但是其他题目就不太好写了..我直接发题解好了 T1:贪心 其实贪 ...
- 设计适用于SOA的类型
我们经常把一个项目分层去开发,无论是通过三层来面向对象开发还是用WCF或Remoting等面向服务的方式开发,返回值只有一个,如果底层出错了我们一般写日志来记录这些错误,然后分析错误来解决问题,但用户 ...
- [转]从命令行往 iOS 设备上安装程序
link:http://www.stewgleadow.com/blog/2011/11/05/installing-ios-apps-on-the-device-from-the-command-l ...
- Leetcode:Minimus Depth of Binary Tree
The problem description: Given a binary tree, find its minimum depth. The minimum depth is the numbe ...
- YSlow的性能测试提示
Add an Expires or a Cache-Control Header tag: server There are two aspects to this rule: For static ...
- spring redis入门
小二,上菜!!! 1. 虚拟机上安装redis服务 下载tar包,wget http://download.redis.io/releases/redis-2.8.19.tar.gz. 解压缩,tar ...