YCM 安装小记

Posted by Felix on November 12, 2017

半夜,女朋友在那边抱怨购物车的物品秒无货,我这边刚好成功安装了vim上最难装的插件–YouCompleteMe,内心非常激动,于是本着取之于人,回馈于人的动机,把自己的一点心得分享出来:

  1. 卸载系统自带的vim\vi,下载vim源码
  2. 编译vim,需要很多第三方的库:比如python、lua、ruby、perl、ncurse等,如果需要什么去下什么,那太麻烦了,参看这个gist 如果不能访问请看下方附录
  3. 使用Vundle安装vim插件,对应的YouCompleteMe插件在~/.vim/bundle/YouComleteMe/,先 git submodule update –init –recursive, 把必须的东西都下载了,运行install.py,看是不是装上了clang。 每次安装完,运行一下python run_test.py,看缺少什么了,clang是不是装上了(如果出现not using clang, c++ semantic …,就是没装上)。 可能缺少的东西, 遇到问题多看看README.md: cmake python-dev flake8 build-essential gcc g++

  4. 最难装的clang-with-llvm, 一般有三种安装方式: 我的操作系统是Debian9

    1) 直接源码安装–不推荐,看博客上一长串流程,第三方工具什么的; 2) 安装预编译版–下载下来后如何部署也是个问题,一堆bin\include\share放到哪里; 3) 通过YouCompleteMe的安装脚本安装–直接运行sudo python install.py


附录1

sudo apt-get remove --purge vim vim-runtime vim-gnome vim-tiny vim-common vim-gui-common

sudo apt-get build-dep vim-gnome

sudo apt-get install liblua5.1-dev luajit libluajit-5.1 python-dev ruby-dev libperl-dev libncurses5-dev libgnome2-dev libgnomeui-dev libgtk2.0-dev libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev libxt-dev

sudo rm -rf /usr/local/share/vim

sudo rm /usr/bin/vim

sudo mkdir /usr/include/lua5.1/include
sudo mv /usr/include/lua5.1/*.h /usr/include/lua5.1/include/

 sudo ln -s /usr/bin/luajit-2.0.0-beta9 /usr/bin/luajit

 cd ~
 git clone https://github.com/vim/vim
 cd vim/src
 make distclean
 ./configure --with-features=huge \
 --enable-rubyinterp \
 --enable-largefile \
 --disable-netbeans \
 --enable-pythoninterp \
 --with-python-config-dir=/usr/lib/python2.7/config \
 --enable-perlinterp \
 --enable-luainterp \
 --with-luajit \
 --enable-gui=auto \
 --enable-fail-if-missing \
 --with-lua-prefix=/usr/include/lua5.1 \
 --enable-cscope 
 make 
 sudo make install

附录2

  1. http://apt.llvm.org/