安装YouCompleteMe 插件,话说安装这个真的是不容易,会出各种问题
但是看到作者在里面写到,已经有成千上万的人,安装成功,那就证明
作者给的教程是没有问题的,那么通过我俩次安装配置ycm,发现其实
问题就是出在,大家不注意的地方,比如gcc cmake,这俩个家伙,基本
上编译 ycm_core ,出问题,都是他们俩个
我这里只说一下Linux的完整安装,官方教程是:
https://github.com/Valloric/YouCompleteMe#full-installation-guide
issu1 vim version
根据教程,第一步,第二步,基本没有问题,主要是vim和python版本
和Vundle,根据教程走就可以了,我当初遇到一个问题,我的vim是
7.4.52 ,但是使用 vim –version,只显示7.4,解决办法,直接在命令行
通过 vim
打开vim主界面,主界面第一行会显示非常具体的版本信息。
issue2 clang+llvm
如果不需要c家族支持的,就不要看了,作者其实写的很详细,但是吧
安装的时候还是比较迷茫哈哈。作者强烈不建议自己编译,llvm+clang,推荐大家下载预先编译好的二进制包。其实我当时也是想去下载这个包
但是发现找不到,http://releases.llvm.org/download.html,该网页预提供的预编译包,名字以clang开头,其实这就是clang+llvm的预编译包,这个问题困扰我好长时间,其实点击下载就有详细的名称了,然后ycm需要33.9以上的版本。那就从最新的预编译包,找适合自己的系统,每个版本提供的预编译并不太一样,比如最新的4.0.1就没有Ubuntu的预编译包,但是4.0版本,提供的有ubuntu的预编译包,所以就从前往后找,如果到3,9版本,还没有那只能根据官方文档,进行源码编译。
下载预编译包,然后解压就行
直接点击下载就可以,不行就 wget 下载
xz -d clang+llvm.tar.xz
tar -xvf clang+llvm.tar
issue 3 : not full sppport c+11
编译ycm_core需要cmake,这里建议使用自带的源安装
如果下载源码编译,请自行google教程,这里提示
在使用
cmake -G "<generator>" -DPATH_TO_LLVM_ROOT=~/ycm_temp/llvm_root_dir . ~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp
问题,基本上从这个命令产生,这里问题会有gcc 的会有cmake,如果提示not full sppport c+11,那是因为gcc版本太低,gcc最少需要5.2版本,这个作者没说,但这就是事实,我把自己编译gcc的过程做了记录,编译gcc我用了俩周时间,主要是各种问题哎,编译gcc教程:
http://blog.csdn.net/li740207611/article/details/74974068
issue 4 : unrecognized wshorten-64-to-32 eg
执行上面的cmake命令,首先会进行c编译家族的一个检查,如果通过,下面会提示,clang,等用到的具体目录,这个时候查看一下,看看是否跟自己解压的一致,下面的检查就是和cmake相关的库文件,如果出错基本上就是cmake,本身有问题,ycm对cmake没有版本要求,所以大家就安装源里面cmake即可。关于unrecognized wshorten6432,问题,我遇到的就是我的cmake本身缺少依赖,有问题,
卸载cmake,之后看看/usr/bin /usr/local/bin 下面的是否还有cmake,如果有
删除之后,再重新安装。至于提示缺少,glibstdc++的问题,也是cmake本身,缺少依赖造成的,cmake源码安装还是很麻烦的,可以自行搜索安装教程解决。
issus5 : 提示缺少libxx
debain dist,直接运行 sudo apt-cache search libxx,然后根据
报错的具体信息,安装相应的包即可,如果还是不知道安装哪个
可以百度 or google一下。
配置ycm
最后的问题就是,ycm安装完之后,并不能直接使用,还需要进行配置
才可以自动补全,以及实现语义分析,
需要在vimrc配置文件里面,vundle配置之后,添加
let g:ycm_global_ycm_extra_conf=’/home/logan/.vim/.ycm_extra_conf.py
ycm 针对语义分析补全,还需要这个配置文件,这个文件不同的需要还需要另外配置,这个文件在,~/.vim/bundle/YouCompleteMe/third_party/ycmd/cpp/ycm/.ycm_extra_conf.py
该目录下,一般复制到vim目录下面,作为一个默认配置,如果你的项目里面有该文件,则读取项目内的配置文件,如果没有,则读取该文件的配置,以下是我的.vrimrc 和conf文件,主要是为了c c++配置的
https://github.com/Notelzg/backup/blob/master/.vimrc
https://github.com/Notelzg/backup/blob/master/.ycm_extra_conf.py
finally
安装过程中,遇见的问题,基本就这些,希望对大家有帮助,也希望
大家可以补全问题哈哈哈。