您的位置:首页 > 其它

vim 插件 youcompleteme full install

2016-05-24 14:25 495 查看

1. 下载 youcompleteme 源码

git clone https://github.com/Valloric/YouCompleteMe.git[/code] 
下载后执行下面命令下载第三方依赖,执行命令后发现 third_part 目录下面多了很多东西

cd YouCompleteMe
git submodule update --init --recursive


2. 安装 CMake

我是通过源码安装的,安装步骤也很简单 ,先到官网下载源码,解压进入目录后执行下面的命令,只需要修改安装路径一个编译选项就行。

configure --prefix=/home/YouPathToInstall/Cmake
make && make install


3. 安装 Clang

这个我也是通过源码安装的,安装步骤同上,有点不同的是,官网有很多源码包,需要自己额外组织一下源码包的结构。具体参考 http://www.cnblogs.com/codemood/p/3142848.html

需要注意的是,YouCompleteMe 官网建议安装 Clang 3.8 以上的版本,另外我在源码安装的时候没有将包
compiler-rt-3.3.src
加入。

其他安装步骤同 Cmake

configure --prefix=/home/YouPathToInstall/Cmake
make && make install


4. 编译 YouCompleteMe

创建一个文件夹来保存编译文件:

cd ~
mkdir ycm_build
cd ycm_build


生成 Makefile 文件

cmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp


-DPATH_TO_LLVM_ROOT
后接
llvm
安装的根目录。

编译

cmake --build . --target ycm_core --config Release


ld
链接时出现了找不到 python 动态连接库的问题,原因是在编译 python 的时候没有加入 –enable shared 选项,参考下面两个连接找到了解决方法

https://github.com/Valloric/YouCompleteMe/issues/131

http://stackoverflow.com/questions/22990769/libpython-error-while-building-youcompleteme

解决方法是使用
locate libpython
查看系统中是否有
.so
文件。如有,更改一下编译参数就行了。

cmake -G "Unix Makefiles" -DPATH_TO_LLVM_ROOT=~/soft -DPYTHON_LIBRARY=/usr/lib64/libpython2.4.so.1.0 . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp


编译成功!

5. 下载 Vundle

下载后解压到目录
~/.vim/bundle/Vundle.vim
下即可。

参考 Vundle 官网
~/.vimre
文件首部中加入如下面配置:

set nocompatible
filetype off

" set the path of Vundle
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#rc('~/.vim/bundle')

Bundle 'Valloric/YouCompleteMe'

filetype plugin indent on


Vundle常用指令:

:BundleList 列出已经安装的插件
:BundleInstall 安装所有配置文件中的插件
:BundleInstall! 更新所有插件
:BundleSearch 搜索插件
:BundleClean! 根据配置文件删除插件


6. 编译 python

如果你的 python 在编译时没有使用 –enable-share 选项,那么可能你需要在本地重新编译一个 python 2.7 带 –enable-share 版本。

编译过程与之前类似,
make
三部曲

7. 安装 python 支持的 vim

再次使用 vim 编辑文件,如果出现下面警告:

YouCompleteMe unavailable: requires Vim compiled with Python (2.6+ or 3.3+) support


那么需要你的VIM有Python的支持,这个是在一开始编译的选项里指定的。查看 vim 是否有 python 支持的具体操作如下:

vim --version |grep python


如果结果如下

+cryptv +linebreak -python +viminfo

-cscope +lispindent -python3 +vreplace


说明没有 python 支持。openSUSE 默认源里的 vim 是没有编译入 Python 2 支持的,所以得手动编译。

解决方案是重新编译,加入–enable-pythoninterp=yes参数。如果想开启Python3支持,则–enable-python3interp=yes,所以最终的编译选项是:

./configure --prefix=/home/daviddwguo/soft --enable-pythoninterp=yes --with-python-config-dir=/home/daviddwguo/soft/lib


vim 下载地址

8. 参考

http://www.cnblogs.com/xbf9xbf/p/4876306.html

youcompleteme 完全安装指南
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  vim cmake 源码 插件