背景:客户的生产环境,机器RedHat6.7。起初安装了一个redis2,但是spring boot不支持这个版本的,无奈只能选择删除重新安装,但是,在安装redis6的,出现问题了。一直报错,
cc1: error: unrecognized command line option "-std=c11"
一、升级gcc
我猜测是不是gcc的问题,就尝试更新gcc,但是Redhat的稳定性导致拿不到最新的gcc版本。
百度更新一下yun的库,文章地址:https://www.cnblogs.com/jedi2015/p/10673677.html
还是不行,最后使用这个库。
cd /etc/yum.repos.d
wget http://people.centos.org/tru/devtools-2/devtools-2.repo
但是还是要修改,把里边的$releasever改为6
好了之后,运行
yum install devtoolset-2-gcc devtoolset-2-binutils devtoolset-2-gcc-c++
这个刚安装的gcc在/opt/rh/devtoolset-2/root/ 这个目录下。
然后,备份RedHat自带的gcc
mv /usr/bin/gcc /usr/bin/gcc-4.4.7 mv /usr/bin/g++ /usr/bin/g++-4.4.7 mv /usr/bin/c++ /usr/bin/c++-4.4.7
最后,使用新安装的gcc
ln -s /opt/rh/devtoolset-2/root/usr/bin/gcc /usr/bin/gcc ln -s /opt/rh/devtoolset-2/root/usr/bin/c++ /usr/bin/c++ ln -s /opt/rh/devtoolset-2/root/usr/bin/g++ /usr/bin/g++
二、安装redis6
下载最新的redis上传到服务器,下载地址:https://redis.io/download
1、解压
tar -zxvf redis-6.0.5.tar.gz
2、编译安装
cd redis-6.0.5/src/
make && make install
3、复制编译好的文件到/home/ibms/redis-tool下
mkdir /home/ibms/redis-tool
mkdir /home/ibms/redis-tool/conf
cp redis-benchmark mkreleasehdr.sh redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb /home/ibms/redis-tool/
cp ../redis.conf /home/ibms/redis-tool/
4、启动
cd /home/ibms/redis-tool/
./redis-server conf/redis.conf