最近把VMware Workstation搞坏了,里面的虚拟机都开不起来了。重装之后过了几天还是老样子,索性安装了VirtualBox来玩。
第一件事就是安装VIM的插件,搞这个东西可谓是累死,尤其是安装YouCompleteMe,所以将过程记录下来,在此分享。
一 安装VIM8.0
首先,Ubuntu16.04上直接安装vim
1 sudo apt-get install vim
此时安装的vim默认是7.4版本的,输入以下指令可升级(Ubuntu才可以):
1 sudo add-apt-repository ppa:jonathonf/vim 2 sudo apt update 3 sudo apt install vim
执行安装完毕之后,可通过以下指令查看:
vim --version
此时可看到文字信息,显示自己的vim版本号
或者输入命令vim,可以看到以下界面:
二、安装Vundle
由于 vim 缺乏默认的插件管理器,所有插件的文件都散布在 ~/.vim 下的几个文件夹中,这样导致各种插件的安装、更新、删除都需要自己手动处理,既麻烦费事,又可能出现错误。所以我们需要插件管理器的帮忙,常见的插件管理器有 vundle、pathogen 等等,我们这里使用 vundle。
1.下载Vundle到 ~/.vim/bundle/vundle目录下
Vundle 托管在 Github 上,所以使用 git 下载 vundle ,并将其存放于 ~/.vim/bundle/vundle 即可。使用如下命令直接将源代码检出到该目录:
1 git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
2.配置.vimrc文件
进入到 ~ 目录下,使用ls -al 查看隐藏文件,如不存在.vimrc文件,那么就创建它。
先进行以下配置(为了快点装完,只装了Vundle管理插件,语法高亮插件,自动补全插件,其他插件随时都可以再装):
1 filetype off 2 set rtp+=~/.vim/bundle/vundle 3 4 call vundle#begin() 5 6 7 " 让vundle管理插件版本,必须 8 Bundle 'VundleVim/Vundle.vim' 9 10 11 Bundle 'tomasr/molokai' 12 Bundle 'Valloric/YouCompleteMe' 13 14 call vundle#end() " 必须 15 filetype plugin indent on " 必须 加载vim自带和插件相应的语法和文件类型相关脚本
保存退出,输入vim指令,然后 :BundleInstall即可对插件进行安装,如下图。
执行后出现DONE即可:
tips:由于YouCompleteMe相对较大,所以要等上一会儿,没有Done之前不能强制退出,否则会造成文件下载不全的情况。
三、编译ycm_core.so 和 libclang.so
1. 首先要安装cmake,才可以进行编译:
1 sudo apt-get install cmake
tips:
在编译过程中,如果出现如下错误:
解决此错误的方法是安装python-dev,这是Python的头文件和静态库包。
1 sudo apt-get install python-dev
执行完毕后重新编译,即可成功。
2. 然后进入到YouCompleteMe文件夹下,先编译.sh文件,如下
1 $ cd ~/.vim/bundle/YouCompleteMe 2 3 $ ./install.sh --clang-completer
3. 接着进行.py文件的编译:
1 ./install.py --clang-completer
编译成功即可。
四、最后的配置
1. 进入到 ~/.vim/bundle/YouCompleteMe/third_party/ycmd文件夹下,输入 ls *.so*,查看是否有以下链接文件,有就表示上面的编译成功。
2. 输入以下指令,拷贝一份.ycm_extra_conf.py:
1 cd ~/.vim/bundle/YouCompleteMe/ 2 cp ./third_party/ycmd/examples/.ycm_extra_conf.py ~/.vim/
3. 编辑.vimrc文件,在之前的 filetype plugin indent on 下面加上一行:
1 let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py'
4.补全配置。
进入.ycm_extra_conf.py文件,在一堆东西中加入下面几行:
注意!注意!注意!
82和84行的数字版本号,要自己进入/usr/include/c++/底下去看,可能稍有不同。
至此,我们的YouCompleteMe自动补全插件安装成功!