[ 另: vim7.4源码在vs2013的编译方法 ]

1 安装libncurses5库:
apt-get install libncurses5-dev

2 安装gvim需要的库:
方法一: apt-get install libgnome2-dev libgnomeui-dev libgtk2.0-dev
libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev
libxt-dev python-dev libperl-dev ruby-dev liblua5.1-0-dev
方法二: apt-get build-dep vim-gtk
(CentOS 用yum install安装相应的包)

3 下载VIM7.4
wget ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2
(For 7.3 and later, extra files and translations are included in
the "All" archive)
tar jxvf vim-7.4.tar.bz2

4 patches
cd vim74/ &&
mkdir patches &&
cd patches/ &&
wget ftp://ftp.vim.org/pub/vim/patches/7.4/*

cd .. &&
for file in patches/7.4.*; do
    patch -Np0 -i $file
done

cd ..

for ((i=1;i<=9;i++)); do
    patch -Np0 -i patches/7.4.00$i 
done
for ((i=10;i<=99;i++)); do
    patch -Np0 -i patches/7.4.0$i 
done
for ((i=100;i<=2361;i++)); do
    patch -Np0 -i patches/7.4.$i 
done

5 编译安装
echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h
&&
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h
&&
./configure --prefix=/usr/local/vim74 --with-features=huge \
           
--enable-multibyte --enable-fontset --enable-xim \
           
--enable-pythoninterp --enable-perlinterp \
           
--enable-rubyinterp --enable-luainterp \
           
--enable-cscope --enable-sniff \
           
--enable-gui=gtk2 \
           
--with-compiledby="busor" &&
make &&
make install

ln -s /usr/local/vim74/bin/vim /usr/local/bin/vim &&
ln -s /usr/local/vim74/bin/vimtutor /usr/local/bin/vimtutor
&&
ln -s /usr/local/vim74/bin/gvimtutor /usr/local/bin/gvimtutor
&&
ln -s /usr/local/vim74/bin/xxd /usr/local/bin/xxd &&
ln -s vim /usr/local/bin/vi &&
ln -s vim /usr/local/bin/view &&
ln -s vim /usr/local/bin/vimdiff &&
ln -s vim /usr/local/bin/gvimdiff &&
ln -s vim /usr/local/bin/gview &&
ln -s vim /usr/local/bin/gvim

6 验证
vim --version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Mar 10 2014
15:56:53)
包含补丁: 1-193
编译者 busor
巨型版本 带 GTK2 图形界面。  可使用(+)与不可使用(-)的功能:
+acl            
+farsi          
+mouse_netterm   +syntax
+arabic         
+file_in_path   
+mouse_sgr      
+tag_binary
+autocmd        
+find_in_path   
-mouse_sysmouse  +tag_old_static
+balloon_eval   
+float          
+mouse_urxvt    
-tag_any_white
+browse         
+folding        
+mouse_xterm    
-tcl
++builtin_terms 
-footer         
+multi_byte     
+terminfo
+byte_offset    
+fork()         
+multi_lang     
+termresponse
+cindent        
+gettext        
-mzscheme       
+textobjects
+clientserver   
-hangul_input   
+netbeans_intg   +title
+clipboard      
+iconv          
+path_extra     
+toolbar
+cmdline_compl  
+insert_expand  
+perl           
+user_commands
+cmdline_hist   
+jumplist       
+persistent_undo +vertsplit
+cmdline_info   
+keymap         
+postscript     
+virtualedit
+comments       
+langmap        
+printer        
+visual
+conceal        
+libcall        
+profile        
+visualextra
+cryptv         
+linebreak      
+python         
+viminfo
+cscope         
+lispindent     
-python3        
+vreplace
+cursorbind     
+listcmds       
+quickfix       
+wildignore
+cursorshape    
+localmap       
+reltime        
+wildmenu
+dialog_con_gui 
+lua            
+rightleft      
+windows
+diff           
+menu           
+ruby           
+writebackup
+digraphs       
+mksession      
+scrollbind     
+X11
+dnd            
+modify_fname   
+signs          
-xfontset
-ebcdic         
+mouse          
+smartindent    
+xim
+emacs_tags     
+mouseshape     
+sniff          
+xsmp_interact
+eval           
+mouse_dec      
+startuptime    
+xterm_clipboard
+ex_extra       
-mouse_gpm      
+statusline     
-xterm_save
+extra_search   
-mouse_jsbterm  
-sun_workshop   
+xpm
    
系统 vimrc 文件: "/etc/vimrc"
    
用户 vimrc 文件: "~/.vimrc"
 第二用户 vimrc 文件: "~/.vim/vimrc"
     
用户 exrc 文件: "~/.exrc"
    系统 gvimrc
文件: "/etc/gvimrc"
    用户 gvimrc
文件: "~/.gvimrc"
第二用户 gvimrc 文件: "~/.vim/gvimrc"

Debian7编译VIM7.4的更多相关文章

  1. [VIM插件]fedora22编译vim7.4对perl组件支持的问题

    在fedora22下,重新编译安装vim7.4的时,在编译perl组件支持时,出现如下错误: /bin/perl -e 'unless ( $] >= 5.005 ) { for (qw(na ...

  2. debian7编译安装tengine添加lua和ldap模块

    1.安装开发环境 # aptitute update # aptitude install -y build-essential # aptitude install -y libldap2-dev ...

  3. debian7编译内核

    第一个步骤“配置内核”. 在这里,我比较建议在发行版默认的config的基础上再进行配置,这样 配置出的内核和发行版本身才会有更好的相容性.比如可以在运行“make menuconfig”之前执行命令 ...

  4. Ubuntu 12.04上编译Vim7.4的时候遇到“no terminal library found”问题

    错误如下: no terminal library foundchecking for tgetent()... configure: error: NOT FOUND!      You need ...

  5. debian7 编译qtopia错误解决案例

    问题: kernel/qjpegio.cpp:60:21: error: jpeglib.h: No such file or directory 解决 sudo apt-get install li ...

  6. centos 6.5 x64编译有python的vim7.4

    wget ftp://ftp.vim.org/pub/vim/extra/vim-7.2-extra.tar.gzwget ftp://ftp.vim.org/pub/vim/extra/vim-7. ...

  7. linux下编译安装vim7.4并安装clang_complete插件

    linux下编译安装vim7.4并安装clang_complete插件 因为debian里软件仓库中下载安装的vim是不支持python写的插件的(可以打开vim,在命令模式先输入:py测试一下),导 ...

  8. vim7.4官方源码在vs2013的编译方法及问题总结

    vim7.4发布也有一段时候了,也该是把之前编译的7.3重新编译一下了,于是考虑着到最新的visual studio 2013编译一下,也顺便看看有没有其它问题. 1.安装vs2013,这个应该不用说 ...

  9. VIM7.4 编译安装 开启python

    https://github.com/wklken/k-vim ./configure --prefix=/usr/local/vim74 \--with-features=huge \--enabl ...

随机推荐

  1. C++ 引用

    本文主要记录了C++中的引用特性,总结了一下代码示例和错误. 简单的引用 引用是C++的特性,指针是C语言的特性.上面代码结果如下: 20 20 100 20 true 引用和被引用的对象是占用同一个 ...

  2. WebApi系列~QQ互联的引入(QConnectSDK)

    回到目录 感谢与改进 首先要感谢张善友老兄为大家封装的这个DLL,它将QQ官方的相关API都集成到了这个里面,这对于开发人员来说,是个福音,有人会说,为什么QQ官方没有提供.net版的SDK呢,在这里 ...

  3. 爱上MVC~AuthorizeAttribute验证不通过如何停止当前上下文

    回到目录 我们知道mvc里有一些过滤器,AuthorizeAttribute用来做授权,一般在用户授权方面可以使用它,当使用没有登陆,我们直接跳到登陆页,这是没有问题的,可我要说的是,当用户对某个Ac ...

  4. Nginx反向代理搭建配置

    1.反向代理方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将服务器上得到的结果返回给internet 上请求连接的客户端,此时代理服务器对外就表现为一个 ...

  5. 浅谈iOS版本号

    作者:Travis FIR.im 一直在尽量兼容不同使用习惯的版本号形式, 但是在使用中我们发现好多开发者对怎么更好的用版本号来标示应用很陌生. 这是篇基础文章, 简单介绍 iOS 的版本号. 名词解 ...

  6. web前端攻击详解

    前端攻击成因 在web网页的脚本中,有些部分的显示内容会依据外界输入值而发生变化,而如果这些声称html的程序中存在问题,就会滋生名为跨站脚本的安全隐患 XSS跨站脚本攻击: 英文全称cross-si ...

  7. java session 详解

    原网址:http://blog.sina.com.cn/s/blog_670b6d880101deff.html 一.术语session 在我的经验里,session这个词被滥用的程度大概仅次于tra ...

  8. Floyd算法的理解

  9. java中final注意的问题

    public class Test{ public static void main(String[] args){ Person p = new Person(); } } /* 4.修饰的变量是一 ...

  10. 基于PHP实现阿里云开放存储服务

    开放存储服务(OpenStorageService,简称OSS),是阿里云对外提供的海量,安全,低成本,高可靠的云存储服务.用户可以通过简单的API(REST方式的接口),在任何时间.任何地点.任何互 ...