在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe
来源:互联网 发布:小野妹子学吐槽 淘宝 编辑:程序博客网 时间:2024/06/03 23:40
简介
YouCompleteMe是一个随键而动的、支持模糊搜索的、高速补全的插件。YCM由google公司搜索项目组的软件工程师Strahinja Val Markovic所开发,YCM后端调用libclang(以获取AST,当然还有其他语言的语义分析库)、前端由C++开发(以提升补全效率)、外层由 python 封装(以成为 vim 插件),它可能是我见过安装最复杂的vim插件了。
安装前提条件及分析
vim 7.3.584+
vim支持Python 2.6+
cmake
clang 3.3+
gcc/g++ 4.7+(支持c++11)
分析上面的这些前提条件,在CentOS 6.6上我们将需要做大量的升级工作:
1.gcc默认版本是4.4.7,不支持C++11,需要将gcc升级到4.8.2
2.vim默认不支持python,需要从源码编译并安装vim,在配置时加入对Python的支持
3.clang需要LLVM编译器框架,需要编译安装LLVM+clang
4.需要升级c++库到C++标准,需要安装clang标准库libc++,libc++abi.so等等
安装依赖库
yum -y install gcc-c++ subversion git
http://blog.csdn.net/tao_627/article/details/50449283
编译YouCompleteMe插件
需要事先安装cmake,clang等
现假定你已经通过Vundle安装YCM,就是在~/.vimrc文件中加入
Bundle 'Valloric/YouCompleteMe'
然后用vim打开任意一个文件,比如
vim old.vimrc
在底部输入
:VundleInstall
这里Vundle会使用git自动下载YouCompleteMe的全部代码。此时我们会得到这样的错误提示:
Done! With errors; press l to view log
ycm_client_support.[so|pyd|dll] and ycm_core.[so|pyd|dll] not detected; you need to compile YCM before using it. Read the docs!
创建一个新文件夹用于存放build的东西
cd ~
mkdir ycm_build
cd ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBclang=ON -DEXTERNAL_LIBCLANG_PATH=/usr/local/lib/libclang.so . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
这样会得到makefile文件,但是我们不会用到
cmake --build . --target ycm_support_libs
会在目录
/root/.vim/bundle/YouCompleteMe/third_party/ycmd
下面生成这三个库
libclang.so,ycm_core.so,ycm_client_support.so
在.vimrc文件中添加一行来进行全局设置
参考文献
[1].http://valloric.github.io/YouCompleteMe/
[2].http://valloric.github.io/YouCompleteMe/#full-installation-guide
[3].http://www.linuxidc.com/Linux/2014-04/99719.htm
YouCompleteMe是一个随键而动的、支持模糊搜索的、高速补全的插件。YCM由google公司搜索项目组的软件工程师Strahinja Val Markovic所开发,YCM后端调用libclang(以获取AST,当然还有其他语言的语义分析库)、前端由C++开发(以提升补全效率)、外层由 python 封装(以成为 vim 插件),它可能是我见过安装最复杂的vim插件了。
安装前提条件及分析
vim 7.3.584+
vim支持Python 2.6+
cmake
clang 3.3+
gcc/g++ 4.7+(支持c++11)
分析上面的这些前提条件,在CentOS 6.6上我们将需要做大量的升级工作:
1.gcc默认版本是4.4.7,不支持C++11,需要将gcc升级到4.8.2
2.vim默认不支持python,需要从源码编译并安装vim,在配置时加入对Python的支持
3.clang需要LLVM编译器框架,需要编译安装LLVM+clang
4.需要升级c++库到C++标准,需要安装clang标准库libc++,libc++abi.so等等
安装依赖库
yum -y install gcc-c++ subversion git
从源码编译支持Python 2.7.10的vim,参见
http://blog.csdn.net/tao_627/article/details/50444866
http://blog.csdn.net/tao_627/article/details/49980815
将gcc升级到4.8.2,参见
http://blog.csdn.net/tao_627/article/details/50448924
http://blog.csdn.net/tao_627/article/details/50449283
编译YouCompleteMe插件
需要事先安装cmake,clang等
现假定你已经通过Vundle安装YCM,就是在~/.vimrc文件中加入
Bundle 'Valloric/YouCompleteMe'
然后用vim打开任意一个文件,比如
vim old.vimrc
在底部输入
:VundleInstall
这里Vundle会使用git自动下载YouCompleteMe的全部代码。此时我们会得到这样的错误提示:
Done! With errors; press l to view log
ycm_client_support.[so|pyd|dll] and ycm_core.[so|pyd|dll] not detected; you need to compile YCM before using it. Read the docs!
上述报错提示,需要安装ycm_client_support.so ycm_core.so,这需要编译YCM
假设YouCompleteMe的顶级目录是
~/.vim/bundle/YouCompleteMe创建一个新文件夹用于存放build的东西
cd ~
mkdir ycm_build
cd ycm_build
cmake -G "Unix Makefiles" -DUSE_SYSTEM_LIBclang=ON -DEXTERNAL_LIBCLANG_PATH=/usr/local/lib/libclang.so . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
这样会得到makefile文件,但是我们不会用到
cmake --build . --target ycm_support_libs
会在目录
/root/.vim/bundle/YouCompleteMe/third_party/ycmd
下面生成这三个库
libclang.so,ycm_core.so,ycm_client_support.so
修改配置文件.ycm_extra_conf.py,它是个隐藏文件,路径在
~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py在.vimrc文件中添加一行来进行全局设置
let g:ycm_global_ycm_extra_conf = '~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py '
下面是使用Vundle安装YouCompleteMe插件的截图,易见没有报错信息:
参考文献
[1].http://valloric.github.io/YouCompleteMe/
[2].http://valloric.github.io/YouCompleteMe/#full-installation-guide
[3].http://www.linuxidc.com/Linux/2014-04/99719.htm
0 0
- 在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe
- Vim智能补全插件YouCompleteMe安装
- Vim智能补全插件YouCompleteMe安装
- Fedora25下vim智能补全插件YouCompleteMe安装
- vim补全插件YouCompleteMe安装
- vim补全插件YouCompleteMe安装
- vim补全插件YouCompleteMe安装
- vim安装youcompleteme自动补全插件
- Centos 7 安装 vim自动补全神器 YouCompleteMe
- Centos 7 安装 vim自动补全神器 YouCompleteMe
- mac os上的vim自动补全插件YouCompleteMe的安装过程
- Vim自动补全插件----YouCompleteMe安装与配置
- Vim自动补全插件----YouCompleteMe安装与配置
- CentOS7 Vim自动补全插件----YouCompleteMe安装与配置
- vim自动补全插件YouCompleteMe的安装及配置
- Vim 自动补全插件 YouCompleteMe 安装与配置
- Vim自动补全插件----YouCompleteMe安装与配置
- Vim自动补全插件----YouCompleteMe安装与配置
- C语言指针-----指针与文件
- Oracle中的事务
- Codeforces 607A Chain Reaction 【二分 + dp】
- Ubuntu 15.10创建桌面快捷方式、启动器
- Intersection of Two Linked Lists 判断两个单链表里边有没有重叠,返回重叠的第一个节点
- 在CentOS 6.6 64bit上安装vim智能补全插件YouCompleteMe
- JDBC部分回顾注意点
- 第九章(1)-事件处理机制-学习笔记
- sslsocket双向验证通信及单向验证通信
- Oracle中存储器(procedure)和触发器(trigger)的小例子
- android入门_采用HttpURLConnection的GET方式实现登陆案例
- C++对象在内存中的存储
- Linux下dpkg命令的使用
- 遍历逻辑卷