从源码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 ...
随机推荐
- 设置checkbox为只读(readOnly)
方式一: checkbox没有readOnly属性,如果使用disabled=“disabled”属性的话,会让checkbox变成灰色的,用户很反感这种样式可以这样让它保持只读:设置它的onclic ...
- DefaultModelBinder
Asp.net MVC的Model Binder工作流程以及扩展方法(3) - DefaultModelBinder Default Binder是MVC中的清道夫,把守着Model Binder中的 ...
- Linq无聊练习系列5--OrderBy ,Groupby练习
/**************OrderBy ,Groupby练习*******************/ //按学生的总分数按降序排列排序 ...
- 大数据工具篇之Hive与MySQL整合完整教程
大数据工具篇之Hive与MySQL整合完整教程 一.引言 Hive元数据存储可以放到RDBMS数据库中,本文以Hive与MySQL数据库的整合为目标,详细说明Hive与MySQL的整合方法. 二.安装 ...
- Java字符串转换为日期和时间比较大小
字符串转换为时间: String data = "2014/7/11"; SimpleDateFormat dfs = new SimpleDateFormat("yyy ...
- 何为分类,UIImageView举例
终于开始自己这个“聚水成洋”的路程了. 经过近一年的iOS学习和开发,遇到很多困难,一开始的陌生和畏惧,中途的困惑和纠结,解决问题后的豁然开朗和总结提升,自己就在这样一个不断的循环中逐渐成长起来了. ...
- C# 利用反射动态创建对象——带参数的构造函数和String类型
C# 利用反射动态创建对象——带参数的构造函数和String类型 最近笔者有一个想法需要利用反射动态创建对象(如string,int,float,bool,以及自定义类等)来实现,一直感觉反射用不好, ...
- Repeater 模板中查找子控件
前言:对于Repeater控件,相信从事NETWeb开发的同仁们再熟悉不过了.因其呈现方式和Literal一样,并不在前端生成任何表单标签元素,所以属于比较轻量级的控件.不过青睐于Repeater的主 ...
- IOS使用不同父类的 view 进行约束
最终效果图如下: 很多限制条件都已经应用到了视图中,我们在解释一下: ·在我们的视图控制器的主视图中有两个灰色的视图.两个视图距视图控制器的视图左 边和右边都有一个标准的空白距离.视图的顶部距顶部的视 ...
- IOS开发之路二十一(UIWebView加载本地html)
挺简单不多说的直接代码: // // ViewController.h // JSAndJson // // Created by WildCat on 13-9-8. // Copyright (c ...