Linux系统:Ubuntu15.04,为Vim安装YouCompleteMe插件,有需要的朋友可以参考下。
0x00. 简介
YouCompleteMe号称Vim的自动补全神器,YouCompleteMe: a code-completion engine for Vim,该项目在github的地址:YouCompleteMe。
0x01. Requirements
Vim is at least 7.3.584 andit has support for python2 scripting.
0x02. 用Vundle来安装YCM(YouCompleteMe)
安装其实非常简单,在.vimrc文件中加入语句Bundle 'Valloric/YouCompleteMe'即可,保存,退出,然后再次打开Vim,normal模式下输入:BundleInstall即开始下载。如下图:
也可以切换至.vim/bundle下手动下载,输入如下命令:
git clone https://github.com/Valloric/YouCompleteMe.git
手动下载完后检查仓库的完整性,切换到YouCompleteMe目录下,输入如下命令:
git submodule update --init --recursive
0x03. 下载最新的libclang
Clang是一个开源的编译器,它可以编译C/C++/Objective-C/Objective-C++.Clang提供的libclang库是用来给YCM为这些语言提供语义补全的引擎。和YCM配合的libclang版本必须>=3.6,但理论上也是可以和3.2+版本的libclang配合使用的。下载最新的libclang如下:
sudo apt-get install libclang-dev
0x04. 编译YCM需要的ycm_support_libs库
首先要确保你已经安装类cmake。如果没有,请按如下安装:
其次需要确保你有一些Python头文件。如果没有,请按如下安装:
接下来,创建新的文件夹ycm_build进行编译,如下:
不需要语义补全的童鞋们,直接执行下面的语句:
cmake -G "Unix Makefiles" . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
然并卵啊,俺们是需要语义补全的呀~,那么请先去llvm.org下载最新的clang+llvm包,然后把它们解压到~/ycm_temp/llvm_root_dir文件夹下。接着,执行如下语句:
这样就编译完了。
0x05. 配置YCM
本渣开始以为编译完了就完事了,谁知道再次打开Vim,它来了这么一句:No .ycm_extra_conf.py file detected,so no compile flags are available. Thus no semantic support for C/C++/ObjC/ObjC++.哦呵呵呵~
进~/.vim/bundle/YouCompleteMe文件夹下一看。。。没有cpp!没有cpp!没有cpp!
咋办?新建呗。。。然后把YCM‘S own .ycm_extra_conf.py文件拷贝到相应的文件夹下。
接着再次打开.vimrc配置YCM,如下:
YouCompleteMe let g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py'
之后再次打开Vim即可。
为了补全,我们还需要在.ycm_extra_conf.py文件中进行配置,如下:
0x06. Summary
城里人真会玩:)
自己再配置配置可以起飞了~
http://www.java123.net/994294.html
http://llvm.org/releases/download.html#3.9.0
http://blog.csdn.net/yunhuang2010/article/details/24413249
http://www.aiuxian.com/article/p-1801079.html
建议使用 YCM自带的./install.sh --clang-completer --system-libclang