centos7安装ycm无代码补全

博主是linux初学者,在装vim智能补全插件YouCompleteMe后发现没有代码补全,配置文件是没有问题的。

在进入vim后出现如下错误提示:
The ycmd server SHUT DOWN(restart with ‘: YcmRestarSever’).Unexpected erroe while loading the YCM core library.Type ‘:YcmToggleLogs ycmd_59745_stderr_Bdov_E.log’ to check the logs

我尝试过将vim升级到8.0,以及各种博客的解决方法,最后在大佬的指导下,以及各种博客的参照下,终于解决了这个问题(博主现在只想说感动天感动地!!)

至于原因:
其实就是类似 linux系统下的缺失 libstdc++.so.6: version’GLIBCXX_3.4.20’的问题
是由于 libstdc++.so.6的版本过低造成的
执行

strings /usr/lib64/libstdc++.so.6 | grep GLIBC

这里写图片描述
我们可以看到里面确实是没有version’GLIBCXX_3.4.20的。

解决方法
首先要升级gcc
但是centos命令直接升级gcc只能升级到4.8.5,要升到更高版本只有去网上下载
(在安装gcc的时候一定要小心谨慎!!!)
我是升级到了4.9.3
下载地址是:http://fr.mirror.babylon.network/gcc/releases/gcc-4.9.3/ 下载其中的包为:gcc-4.9.3.tar.bz2
如果下载后直接安装会出现
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+
的问题。
因为安装该版本的GCC 需要GMP 版本 >= 4.2 MPFR版本 >= 2.4.0 MPC版本 >= 0.8.0 这3个依赖缺一不可。
需要手动下载

这三个依赖分别是:gmp,mpfr和mpc,下载地址分别如下:
    gmp:http://ftp.gnu.org/gnu/gmp/ 版本:gmp-5.0.1.tar.gz
    mpfr(GNU镜像):http://ftp.gnu.org/gnu/mpfr/ 或者官网:http://www.mpfr.org/mpfr-current/ 版本:mpfr-3.1.5.tar.gz
    mpc:http://ftp.gnu.org/gnu/mpc/ 版本:mpc-1.0.3.tar.gz

下载完成后,执行如下命令
安装gmp

tar -xvzf gmp-5.0.1.tar.gz
cd gmp-5.0.1/
mkdir temp
cd temp/
../configure --prefix=/usr/local/gmp-5.0.1
make
make install

安装mpfr

tar -xvzf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-5.0.1
make
make install

到这里mpfr安装完毕,并且必须添加–with-gmp导入gmp依赖,如果不加这个参数也会安装成功,但是后面安装GCC会报一个内部依赖的错误,如果这里不加会很麻烦,然后再安装mpc,命令如下:

tar -xvzf mpc-1.0.3.tar.gz
cd mpc-1.0.3/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpc-1.0.3 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5
make
make install

同样一定要加上依赖的参数,现在mpc也安装完毕,然后执行 vim /etc/profile 编辑环境变量配置文件,直接在文件最后添加一行下面的变量:

扫描二维码关注公众号,回复: 3705944 查看本文章
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.0.3/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.5/lib

上面的路径要和实际安装时编译的路径一致,保存并退出后,执行 source /etc/profile 使环境变量生效

最后就可以开始安装gcc了,安装过程如下:

tar -jxvf gcc-4.9.3.tar.bz2
cd gcc-4.9.3/
mkdir output
cd output/
../configure --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-1.0.3

make -j4
make install

ps安装时间可能有点长…忍忍就过去啦!

安装成功之后执行 gcc -v 或者 gcc –version 查看新的版本信息如下:

这里写图片描述

然后

sudo updatedb 
locate libstdc++.so.6 

这里写图片描述

在这里我们找到了我们需要的libsrdc++.6.0.20

然后root在/usr/lib64目录下创建软链接

ln -sf /usr/local/lib64/libstdc++.so.6.0.20 libstdc++.so.6

然后你执行vim就会发现代码补全神奇地出来了!!!!!

猜你喜欢

转载自blog.csdn.net/lyn_00/article/details/77984257