https://www.yy-tao.com/detail/265.html
基础运行环境
保证 PHP 版本大于等于 7.1
保证 Swoole 拓展版本大于等于 1.9.23或者是2.1.0 目前最新的是4.4.5
需要 pcntl 拓展的任意版本
使用 Composer 作为依赖管理工具
linux 环境 CentOS 6.5 或更高版本操作系统
环境检查
gcc --version g++ --version
升级gcc(已经升级的请跳过)
本文使用的centos6.10版本虚拟机做演示 自带的版本是4.4.6的,太低了需要升级
1.下载
wget wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.bz2
2.解压
tar -jxvf gcc-4.8.5.tar.bz2
3.进入文件夹
cd gcc-4.8.5.tar
4.下载依赖
./contrib/download_prerequisites
5.如果因为脚本运行不了则自行下载几个包
https://www.yy-tao.com/downloads/mpc-0.8.1.tar.gz https://www.yy-tao.com/downloads/gmp-4.3.2.tar.bz2 https://www.yy-tao.com/downloads/mpfr-2.4.2.tar.bz
上传到gcc-4.8.5文件夹
注释掉download_prerequisites里的几行wget,然后执行脚本
6.创建编译好后的程序文件目录,进入并编译(时间有点长可以泡杯茶)
mkdir /usr/local/src/gcc-build-4.8.5 cd /usr/local/src/gcc-build-4.8.5 /usr/local/src/gcc-4.8.5/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib make make install
7.reboot 重启查看gcc版本,出现4.8.5 成功
替换系统低版本gcc
mv /usr/bin/c++ /usr/bin/c++.bak ln -s /usr/local/bin/c++ /usr/bin/c++ cd /usr/bin/ mv ./g++ ./g++.bak ln -s /usr/local/bin/g++ /usr/bin/g++ mv ./gcc ./gcc.bak ln -s /usr/local/bin/gcc /usr/bin/gcc #查找gcc动态链接库位置位置 find / -name "libstdc++.so*" cp /usr/local/lib64/libstdc++.so.6.0.19 /usr/lib64 rm -f ./libstdc++.so.6 ln -s libstdc++.so.6.0.19 libstdc++.so.6 #查看链接库是否替换完成 strings /usr/lib64/libstdc++.so.6 | grep GLIBC # 出现 GLIBCXX_3.4.13 说明成功
下载安装swool
1.php的扩展下载地址
http://pecl.php.net/package/swoole
2.进入目录
cd /usr/local/src/
3.下载最新版本的swoole
wget http://pecl.php.net/get/swoole-4.4.5.tgz
4.解压并进入目录
tar xvf swoole-4.4.5.tgz cd swoole-4.4.5
5.编译
/usr/local/php/bin/phpize #我的phpize位置 ./configure --with-php-config=/usr/local/php/bin/php-config #我的配置文件的位置 make && make install