当前位置: 首页 > Linux

从源代码构建Vim

时间:2023-04-07 01:49:12 Linux

从源代码构建Vim介绍事情并不容易,因为我是Vim的重度用户。.不过大部分系统能安装或者自带的都是比较老的版本,可能是7.x之类的。或者你需要使用Vim的某些特性或功能,但是别人为你构建的程序却没有启用,这很尴尬。因此,我们需要从源代码构建自己的Vim。第一步是下载运行时和源代码。第一步是安装和编译必要的库。在这里你看情况,有什么错误可以补上。这些可能是需要的(我不需要自己安装它们):sudoaptinstallncurses-dev#orsudoaptinstalllibncurses-dev#orsudoaptinstalllibncurses5-dev\libgtk2.0-dev\libatk1.0-dev\libcairo2-dev\python-dev\python3-dev\git然后下载源码:cd~&&gitclonehttps://github.com/vim/vim.git&&cdvim/src配置Vim因为Vim支持很多功能,这样您就可以选择要开启或关闭的功能。你可以参考这里或使用这个命令来检查你当前的Vim版本和功能:$vim--version|lessVIM-ViIMproved8.2(2019年12月12日,2021年1月19日18:24:53编译)macOS版本-x86_64包含的补丁:1-2375由没有GUI的Homebrew大版本编译。包含(+)或不包含(-)的功能:+acl-farsi+mouse_sgr+tag_binary+arabic+file_in_path-mouse_sysmouse-tag_old_static+autocmd+find_in_path+mouse_urxvt-tag_any_white+flotochdir+mouse_xterm-tcl-autoservername+folding+multi_byte+termguicolors-balloon_eval-footer+multi_lang+terminal+balloon_eval_term+fork()-mzscheme+terminfo-browse+gettext+netbeans_intg+termresponse++builtin_terms+hangul_input+num64+text_object+packages+textprop+channel+insert_expand+path_extra+timers+cindent+ipv6+perl+title-clientserver+job+persistent_undo-toolbar+clipboard+jumplist+popupwin+user_commands+cmdline_compl+keymap+postscript+vartabs+cmdline_hist+lambda+printer+vertsplit+cmdline_info+langmap+profile+virtualedit+comments+libcall-python+visual+conceal+linebreak+python3+visualextra+cryptv+lispindent+quickfix+viminfo+cscope+listcmds+reltime+vreplace+cursorbind+localmap+rightleft+wildignore+cursorshape+lua+ruby+wildmenu+dialog_con+menu+scrollbind+windows+diff+mksession+signs+writebackup+digraphs+modify_fname+smartindent-X11-dnd+mouse-sound-xfontset-ebcdic-mouseshape+spell-xim+emacs_tags+mouse_dec+startuptime-xpm+eval-mouse_gpm+statusline-xsmp+ex_extra-mouse_jsbterm-sun_workshop-xterm_clipboard+extra_search+mouse_netterm+syntax-xterm_save系统vimrc文件:"$VIM/vimrc"用户vimrc文件:"$HOME/.vimrc"第二用户vimrc文件:"~/.vim/vimrc"用户exrc文件:"$HOME/.exrc"defaultsfile:"$VIMRUNTIME/defaults.vim"fall-backfor$VIM:"/usr/local/share/vim"版本号写在上面的第一行,下面列出了所有的特性,那个带+的是启用的,带-的是不启用的。如果正确,我们现在就在vim/src目录中。这个命令基本上可以启用全部功能:./configure\--with-features=huge\--enable-multibyte\--enable-rubyinterp\--enable-perlinterp\--enable-luainterp\--enable-pythoninterp\--with-python-config-dir=/usr/lib/python2.7/config-arm-linux-gnueabihf/\--enable-python3interp\--with-python3-config-dir=/usr/lib/python3.7/config-3.7m-arm-linux-gnueabihf/\--enable-gui=gtk2\--enable-cscope\--prefix=/usr注意:将两个Python路径替换成你机器上的实际路径!或者,如果你想关闭一个默认开启的功能,你可以这样关闭:./configure--enable-multibyte=no--enable-cscope=yes直接写xxx=no来关闭它off和xxx=yes打开它。在上面的示例中,我们关闭了enable-multibyte,并打开了enable-cscope。命令运行后,程序会运行很多检查,耐心等待它完成即可。安装运行configure后,配置就设置好了,接下来就可以直接安装了。makesudomakeinstall如果你愿意也可以指定位置:sudomakeVIMRUNTIMEDIR=/usr/local/share/vim/vim82或者指定可以运行的最大作业数以防止小机器不堪重负,因为有没有限制,随便打开:make-j4运行make和install命令后,vim应该已经安装好了。再次检查版本,应该是最新的。如果没有变化,可能是shell的缓存机制导致的。你可以打开另一个shell或者用下面的命令更新缓存:hashvimisdone~