YouCompleteMe安装与配置

使用Vim编写程序少不了使用自动补全插件,在Linux下有没有类似VS中的Visual Assist X这么方便快捷的补全插件呢?以前用的是neocomplcache+code_complete+omnicppcomplete,但效果还是不是很好。看到有YCM后前面的插件可以说拜拜了。

YouCompleteMe:一个随键而全的、支持模糊搜索的、高速补全的插件。YCM 由 google 公司搜索项目组的软件工程师 Strahinja Val Markovic 所开发,YCM 后端调用 libclang(以获取AST,当然还有其他语言的语义分析库)、前端由 C++ 开发(以提升补全效 率)、外层由 Python 封装(以成为 vim 插件),它可能是我见过安装最复杂的 vim 插件了。

推荐阅读:

Vim学习指南

快速学会 Vi编辑器

强大的Vim 编辑器

CentOS 6.2上搭建Vim开发环境

Vim 7.4a 发布,全新更快的正则表达式引擎

CentOS 5.4 安装高亮Vim编辑工具

Vim技巧分享:C语言设置

Ubuntu中设置Vim的行号

Vim编辑器使用基础教程

先看个补全效果图

YouCompleteMe安装与配置

还可以进行路径自动补全

YouCompleteMe安装与配置

YouCompleteMe要求Vim版本7.3.584+,前面已经介绍了编译安装Vim7.4方法。 同时YouCompleteMe要求clang版本为3.3以上。如果想获取最新的clang可以使用SVN,按照其官网上介绍的方法编译安装。我们这里介绍源码编译安装clang3.3。

目录

Vim自动补全插件----YouCompleteMe安装与配置

编译安装IIvm-clang3.3

安装clang标准库

安装配置YouCompleteMe

编译安装llvm-clang3.3

先下载如下4个源码: 建立目录:

免费下载地址在

用户名与密码都是

具体下载目录在 /2014年资料/4月/8日/Vim自动补全插件----YouCompleteMe安装与配置

下载方法见

mkdir ~/llvm-clang

分别解压上面下载的4个文件到上述目录

tar -xvzf llvm-3.3.src.tar.gz

tar -xvzf compiler-rt-3.3.src.tar.gz

tar -xvzf clang-tools-extra-3.3.src.tar.gz

tar -xvzf cfe-3.3.src.tar.gz

再将工具移动到llvm的相应目录下,使得clang,clang-tools-extra和compiler-rt就可以和llvm一起编译了:

mv cfe-3.3.src/ llvm-3.3.src/tools/clang/

mv clang-tools-extra-3.3.src/ llvm-3.3.src/tools/clang/extra/

mv compiler-rt-3.3.src/ llvm-3.3.src/projects/compiler-rt/

下载最新的LLVM、clang 及辅助库源码可用:

cd ~/llvm-clang svn co llvm cd llvm/tools svn co clang cd ../.. cd llvm/tools/clang/tools svn co extra cd ../../../.. cd llvm/projects svn co compiler-rt cd ..

返回~/llvm-clang目录,并新建一个目录llvm-build专门用于编译llvm-clang,使得不污染源码。

mkdir llvm-build

cd llvm-build/

../llvm-3.3.src/configure --enable-optimized

建立编译环境

此种配置后,llv-clang默认安装到目录 /usr/local/ 下, 如果想改变安装目录,则加上配置: --prefix=Path 来制定 输入 make -j4

(本人机器为双核)开始编译

sudo make install

进行安装

如要卸载则在该目录下输入

sudo make uninstall

安装好后,输入 clang -v查看版本信息:

安装clang标准库

clang 的标准库————libc++(接口层)和 libc++abi(实现层)需要安装头文件和动态链接库(*.so)。

安装libc++ cd ~/llvm-clang svn co libcxx cd libcxx/lib ./buildit

头文件已经生成到 ~/llvm-clang/libcxx/include/,要让 clang 找到必须复制到 /usr/include/c++/v1/

cp -r ~/llvm-clang/libcxx/include/ /usr/include/c++/v1/

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/18309.html