在自己的阿里云服务器上安装redis6.0,发现需要gcc4.9以上的版本,阿里云服务器默认的是4.8.5的版本,所以需要升级一下,但是阿里云服务器太干净了啥也没带,所以导致yum命令升级gcc的时候不好使,只能手动去升级,这个事情花费了我一整天。
首先:which g++查看一下服务器有没有c++环境,如果没有,一定要运行,就因为这一句话浪费了一天的时间。
yum install gcc-c++
然后就是准备安装的包,一共是这四个,我是在 http://ftp.gnu.org/gnu 这里面找到的,下载速度还算可以。把这四个包下载到服务器的 /usr/local 路径下面。

接下来这几个包的安装顺序一定不能搞错,不然会很麻烦,我因为安错了把服务器格式化了两次才搞定。
首先安装gmp,注意第五个命令的路径跟你自己包解压的路径匹配,后面的都是这样,我的路径就是/usr/local
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,注意第五行是mpfr和gmp的路径
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
然后安装mpc,注意第五行是mpc gmp以及mpfr三个的路径
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
这里的安装顺序一定要是这样,因为先要mpfr依赖gmp,然后是mpc依赖前两个.
接下来就是加上依赖的参数,先执行 vim /etc/profile ,编辑这个文件,在文件的最后一行加上
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,注意最后一个命令有点长,与自己本机的地址要对应。前面的都是为gcc安装做基础,不然gcc在编译安装的时候报各种问题,我就是因为没有c++的运行环境,所以在编译的时候一直报Error的问题。
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
make install
make命令执行的时候会非常慢,据说执行了两三个小时的都有,我是执行完命令之后就去睡觉了=_= 第二天执行的make install命令
有的人到此为止执行gcc -v,发现gcc版本已经更新到最新的了,但我的还是不行,所以还要以下的这些配置。
接下来配置gcc ,执行 vi /etc/profile ,在文件末尾添加这一行配置
export PATH=$PATH:/usr/local/gcc4.9.3
退出保存,执行 source /etc/profile
执行这个命令,删除旧的软连接执行
rm /usr/bin/gcc
执行这个命令,使新版本建立软连接
ln -s /usr/local/gcc4.9.3/bin/gcc /usr/bin/gcc
再执行这两个命令
rm /usr/bin/g++
ln -s /usr/local/gcc4.8.2/bin/g++ /usr/bin/g++
上面全部搞定之后,执行gcc -v 查看gcc的版本是否已经更新成最新版本,如果没有成功,我真的不知道为啥了。

1746

被折叠的 条评论
为什么被折叠?



