YouCompleteMe+anaconda+vim8.0自动补全

来源:互联网 发布:淘宝的折扣价怎么设置 编辑:程序博客网 时间:2024/06/09 21:31

YouCompleteMe+anaconda+vim8.0自动补全
lz最近在使用pythorch进行一些实验,但是api太多,在vim下代码编写十分不方便,于是尝试使用了youcompleteme来进行代码补全,下面是简单的配置过程。
vim 8.0 安装 参考链接:https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source

./configure –with-features=huge \
–enable-multibyte \
–enable-rubyinterp=yes \
–enable-pythoninterp=yes \
–with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu \
–enable-perlinterp=yes \
–enable-luainterp=yes \
–enable-gui=gtk2 –enable-cscope –prefix=/usr

其中youcompleteme的安装过程可以参考官网
http://valloric.github.io/YouCompleteMe/#ubuntu-linux-x64

主要要注意的是:
youcompleteme只支持原生态的python解释器,因此在运行install.py前,应该指定使用原生态的python解释器(lz是将anaconda的bin路径临时性的从PATH中移除),虽然使用anaconda的python解释器也可以编译成功,但是在vim中使用youcompleteme的时候会报错。

编译完成后,此时还不能对anaconda的模块进行补全,需要将anaconda的site-package径添加至PYTHONPATH中
http://www.cnblogs.com/shanql/articles/5477483.html
vim ~/.bashrc
export PATHONPATH=”/path/to/anaconda2/lib/python2.7/site-packages:$PYTHONPATH”
退出
source ~/.bashrc

更新:
/###################################################################/
最近需要重新配置YoucompleteMe,于是按照之前的方法重新尝试了一遍
1.安装vundle, 参考vundle官网
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
然后修改.vimrc文件,在中间添加:
set nocompatible ” be iMproved, required
filetype off ” required
” set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin ‘VundleVim/Vundle.vim’
Plugin ‘Valloric/YouCompleteMe’
call vundle#end() ” required
filetype plugin indent on ” required
保存后,执行:PluginInstall,完成YCM下载

2.编译YCM
进入.vim/bundle/YouCompleteMe目录下,执行
  ./install.sh –clang-completer
后面参数表示,支持c语言系列
报错:提示需要gcc4.9以上版本,因为ubuntu 14默认是gcc4.8,而这次YCM的版本更新,需要使用gcc4.9以上完成编译,因此只能将gcc进行升级

3.gcc升级
方法一:直接利用ppa源进行升级,失败.失败原因是无法建立起与源的连接,从而导致不可以下载和更新.
方法二:源码编译安装
由于不希望将默认的gcc4.8给替换掉,因此希望可以绕开root这一步,参考update gcc/g++ without root priviliges
 1.下载gcc 7.1
 2.链接内容

tar xzf gcc-5.2.0.tar.gz
cd gcc-5.2.0
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
PWD/../gcc5.2.0/configureprefix=HOME/gcc-5.2.0 –enable-languages=c,c++,fortran,go
make
make install
注意:
1.prefix参数则是指定install的位置,默认是在/usr/下的,如果没有加上这一句,在后面的make install时,会提示权限不够
2.PWD不知道是什么,我直接就是../gcc-7.1/….

3.最最重要的,将你的路径写入系统环境变量中.分别将gcc7.1下的bin添加至PATH路径, lib, lib64添加至LD_LIBRARY_PATH路径中.注意这些路径放在最前面
至此,无root权限的gcc编译便完成了

4.现在可以愉快的编译YCM了.
参考 将c++指定为编译好的
CXX=~/gcc/gcc-7.1.0/bin/c++ ./install.sh –clang-completer
注:之前如果没有将编好的路径添加到环境变量中,还会报错
failed to determine regular expression backend for cross-compile cmake

5.剩下的就是将anaconda路径添加到PYTHONPATH中

0 0
原创粉丝点击