你的位置:首页 > 操作系统

[操作系统]Ubuntu15.04YouCompleteMe插件安装


0x00. 简介

YouCompleteMe号称Vim的自动补全神器,YouCompleteMe: a code-completion engine for Vim,该项目在github的地址:YouCompleteMe。

0x01. Requirements

Vim is at least 7.3.584 and it 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。如果没有,请按如下安装:

sudo apt-get install cmake

其次需要确保你有一些 Python 头文件。如果没有,请按如下安装:

sudo apt-get install python-dev

接下来,创建新的文件夹 ycm_build 进行编译,如下:

1 cd ~2 mkdir ycm_build3 cd ycm_build

不需要语义补全的童鞋们,直接执行下面的语句:

cmake -G "Unix Makefiles" . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp

然并卵啊,俺们是需要语义补全的呀~,那么请先去 llvm.org 下载最新的 clang+llvm 包,然后把它们解压到 ~/ycm_temp/llvm_root_dir 文件夹下。接着,执行如下语句:

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

再接着要开始编译 ycm_support_libs 库,执行如下语句:

make ycm_support_libs

这样就编译完了。

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,如下:

"YouCompleteMelet g:ycm_global_ycm_extra_conf='~/.vim/bundle/YouCompleteMe/cpp/ycm/.ycm_extra_conf.py'

之后再次打开Vim即可。

为了补全,我们还需要在 .ycm_extra_conf.py 文件中进行配置,如下:

1 '-isystem',2 '/usr/include',3 '-isystem',4 '/usr/include/c++/4.9.2',5 '-isystem',6 '/usr/include',7 '/usr/include/x86_64-linux-gnu/c++',

0x06. Summary

城里人真会玩:)

自己再配置配置可以起飞了~

 




去西藏旅游要多少钱去西藏旅游最佳路线去西藏旅游最佳时间西藏旅游线路报价西藏旅游攻略大全琼海火车站到红色娘子军纪念园有直达车吗?火车站到琼海娘子军在哪坐车? 贺州五一去哪玩?贺州五一什么地方有好玩活动? 广西贺州紫云洞五一有什么活动?贺州紫云洞门票免费吗? 百色那坡黑衣壮五一好玩吗?那坡黑衣壮风情园有什么活动? 泰宁大金湖美食旅游贴士 2015樟木头观音山相亲会报名电话?东莞观音山相亲大会免费参加吗? 春来一场樱花雨 郑州八大赏樱地 2015樟木头观音山相亲会地址?东莞观音山相亲大会怎么报名? 湖北四大鲜为人知的风情古镇推荐 乌镇住宿有那些?价格多少? 南京玄武苏宁银河诺富特酒店 彰显为自然生活而设计理念 西湖住宿有那些? 深圳北站离哪个地铁站最近? 马尔代夫有哪些岛屿好?要怎么选择? 泰国哪有小吃街? 泰国·曼谷街头令人垂涎的特色小吃是什么? 1210YC154KAT2A Datasheet 1210YC154KAT2A Datasheet AQ147A120GAJME Datasheet AQ147A120GAJME Datasheet 12061C393JAT2A Datasheet 12061C393JAT2A Datasheet 齐齐哈尔去港澳3日游 齐齐哈尔去港澳3日游 齐齐哈尔去港澳3日游 佳木斯跟团港澳五日游价格 佳木斯跟团港澳五日游价格 佳木斯跟团港澳五日游价格 黑龙江跟团港澳四日游 黑龙江跟团港澳四日游 黑龙江跟团港澳四日游