安装swoole 要升级gcc4.8+ 版本

2019-08-06 09:28:11   PHP

 

安装swoole的时候,出现一些unrecognized command line option “-std=c++11” 异常

查看gcc版本

gcc -v

发现版本是4.7

swoole 官方有说明gcc要4.8+以上版本

只能升级gcc了

wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2

tar -jxvf gcc-4.8.2.tar.bz2

cd gcc-4.8.0 

这一步会自动下载一些依赖

./contrib/download_prerequisites 

建立一个目录供编译出的文件存放

mkdir gcc-build-4.8.2

cd gcc-build-4.8.2

生成Makefile文件

./configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

注意:此步骤非常耗时最少一个小时

make -j4

完成上一步会有一些报错,先不管

make install

完成上面就是完成安装gcc4.8了

接下来替换旧版本

倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,注意x86_64-unknown-linux-gnu-gcc可能跟你的不一样,你找到是gcc的就是了

update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc 40

删掉旧的gcc

mv /usr/bin/gcc

建立软连接

ln -s /usr/local/bin/x86_64-unknown-linux-gnu-gcc /usr/bin/gcc

gcc -v

大功告成

升级到gcc 4.8: wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtoolset-2.repo yum -y install devtoolset-2-gcc devtoolset-2-gcc-c++ devtoolset-2-binutils scl enable devtoolset-2 bash

https://www.vpser.net/manage/centos-6-upgrade-gcc.html