学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

 

趟过了之前的坑后,再来安装YouCompleteMe

一、安装依赖包

yum install libXt-devel gtk2-devel

yum -y install python-devel ruby ruby-devel perl perl-devel perl-ExtUtils-Embed

yum install ncurses-devel

yum install ctags

二、编译安装 cmake 3.9.2

删除自带的cmake   

yum remove cmake

编译安装cmake  

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

./bootstrap 

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

make && make install

三、下载 YouCompleteMe

1、git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe

2、 cd .vim/bundle/YouCompleteMe

3、修改 install.sh 注释掉判断python的语句

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

5、开始安装   ./install.sh     --clang-completer

 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

6、根据提示  git submodule update --init  --recrusive

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

7、经过漫长的等待,大约有一个小时吧(和网络有关,主要是git),终于安装成功

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

8、安装YouCompleteMe

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

9、重新编译安装python3.6

./configure --enable-shared --prefix=/usr/local/pyton

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

make ; make install

10、再次执行

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

11、解决方法

[[email protected] YouCompleteMe]# cd /soft/Python-3.6.2
[[email protected] Python-3.6.2]# cp libpython3.6m.so.1.0 /usr/lib
[[email protected] Python-3.6.2]# cp libpython3.6m.so.1.0 /usr/lib64/
[[email protected] Python-3.6.2]# cp libpython3.6m.so.1.0 /usr/local/lib
[[email protected] Python-3.6.2]# cp libpython3.6m.so.1.0 /usr/local/lib64

 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

12、再次执行

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

发现是去下载和ubuntu相关的安装包,看来和centos关联的比较少啊。

进行到这里的时候,报错,

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

13、看来还是逃不过安装 Clang(其实上面 的报错和网络有关,并非是没有装Clang的原因)

创建路径

mkdir /soft/Clangtools      

cd /soft/Clangtools

wget http://llvm.org/releases/3.9.1/llvm-3.9.1.src.tar.xz

wget http://llvm.org/releases/3.9.1/cfe-3.9.1.src.tar.xz

wget http://llvm.org/releases/3.9.1/compiler-rt-3.9.1.src.tar.xz

wget http://llvm.org/releases/3.9.1/clang-tools-extra-3.9.1.src.tar.xz

下载后在文件夹里

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

解压

tar xf cfe-3.9.1.src.tar.xz 

tar xf clang-tools-extra-3.9.1.src.tar.xz

tar xf clang-tools-extra-3.9.1.src.tar.xz

tar xf clang-tools-extra-3.9.1.src.tar.xz

解压后

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

重点来了,敲黑板。 路径不要搞错了

mv cef-3.9.1.src  clang

mv clang  llvm-3.9.1.src/tools

mv clang-tools-extra-3.9.1.src extra

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

mv compiler-rt-3.9.1.src compiler-rt

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

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

其中有一步拷贝有错误     mv  extra llvm-3.9.1.src/tools/clang

应该改成 mv extra llvm-3.9.1.src/tools/clang/tools/

拷贝后目录结果显示

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

 

在llvm-3.9.1.src同级目录下创建文件夹 build-3.9.1 ,目的是不污染源码环境

mkdir  build-3.9.1

创建 Clang-3.9.1 作为cmake的安装路径

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

很不幸的是,报错了。LLVM Project 不再支持 configure 和 make

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

因此采用cmake 编译安装

cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/soft/Clangtools/Clang-3.9.1 -DLLVM_OPTIMIZED_TABLEGEN=1 ../llvm-3.9.1.src

 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

编译开始

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

自动忽略Failed  ????

make -j$(nproc)       漫长的编译过程 nproc 指当前几个线程,结果开了这个后我的物理机cpu直接 100%了

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

make install

 学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

 14、再次执行

./install.sh   --clang-completer

发现还是卡在downloading那里,这个时候我有点绝望了。索性重启一次虚拟机试试,结果重启之后再执行,可以啦~,后者不断的尝试,总有一次你能连上

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

静静的等待。。。。。

继续等待

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

终于结束了,幸好100%完成了。

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

 

15、但在我用vim编辑文本的时候,并没有出现自动补全。可能和.vimrc配置有关

但是当我改了.vimrc后,主要是把 列表里YouCompleteMe的注释给去掉,保存后,再打开报错

学以致用十-----centos7.2+python3.6+vim8.1+YouCompleteMe

只好将.vimrc名字改了。再把注释改回来。这样vim又恢复了正常。

16、至于YouCompleteMe 为啥补全没生效,还有待进一步研究。

不过我在另外一台测试虚拟机上是成功了的,(YouCompleteMe 直接在vim PluginInstall里安装),又或者和我装了 pydiction 有冲突?但我已经将pydiction注释掉了还是不行,

所以以后有时间再来一遍吧。实在是耽误了比较长的时间了。Python补全其实用Pydiction也还可以的

YouCompleteME安装过程就是如此。

无法补全的问题是 在.vimrc 里 Plugin ‘Valloric/YouCompleteMe’ 被注释掉了。至于被注释掉的原因,在后续的日志里会提到。---2018.09.18补充