YouCompleteMe号称vim最难安装的插件,是过低估它了,我以为只是目前我遇到的最难安装的一个软件。python
YouCompleteMe是用c++写的,要想补全c-family须要用clang编译。linux
clang是苹果基于llvm架构开发的编译器,具备强大的语义分析能力,在它没有出现以前,emacs和vim的自动补全烂了几十年,它的目标是超越gccc++
而YouCompleteMe下层用c++写的用到了clang语义补全的引擎,上层用Python封装。想要安装它并不是易事,涉及到不少底层的东西。git
在这里我简单罗列出两种环境下的安装步骤:windows下gvim和linux下的vimgithub
1、windows下:vim
一、安装gvim支持Python(vim --version,Python前面有+号,表示支持,若是没有须要本身编译安装对Python的支持。刚说了YouCompleteMe用Python封装,没有对Python的支持后面都会白作,一身冷汗。)windows
二、git到~/vimfiles/bundle/ 地址:https://github.com/Valloric/YouCompleteMe架构
三、git submodule update --init --recursive 更新库插件
四、安装cmake编译器开发
五、安装visual studio 2017勾选c++应用开发模块(由于会用到C++编译器,到时候会用vs来编译,记得选择高版本的vs,2013如下对clang不支持)
六、下载clang和llvm编译安装
七、cmake -G "Visual Studio 15 Win64" . d:/Vim/vimfiles/bundle/YouCompleteMe/third_party/ycmd/cpp -DPYTHON_LIBRARYD=d:/Python27/libs -DPYTHON_INCLUDE_DIR=d:/Python27/include(这个是不须要c-family补全的编译命令)
cmake -G "Visual Studio 15 Win64" -DPATH_TO_LLVM_ROOT=d:/llvm . d:/Vim/vimfiles/bundle/YouCompleteMe/third_party/ycmd/cpp -DPYTHON_LIBRARYD=d:/Python27/libs -DPYTHON_INCLUDE_DIR=d:/Python27/include(这个是须要c-family补全的编译命令)
八、python install.py --all
九、配置_vimrc
2、linux下:
上面四步同样
五、若是须要c-family补全就编译安装llvm和clang
六、./install.py --all
具体看https://github.com/Valloric/YouCompleteMe
另外gcc编译器须要4.9以上,4.8的本身从新编译安装。
-------------------------------------------------------------------------------------
windows下个人YCM并无安装成功,有时间再看一下。
https://github.com/Vito-Yan/gvim