centos7安装swoole
2020-04-03 13:14:14
一、如果环境没安装gcc,需要安装。
yum install glibc-headersyum install gcc-c++
二、然后安装swoole
yum install php72w-devel php install php72w-pear pecl install swoole
安装过程中会提示是否开启一些功能,根据系统环境配置,如果系统没安装对应的,到后面可能或出错。
// 是否启用 Debug 跟踪调试 // 启用后,会在命令行中输出 Debug 跟踪 log。 enable debug/trace log support? [no] : no // 是否启用 PHP Sockets 支持 // 如果你需要用 PHP 编写 Sockets 服务,可以启用此项。 enable sockets supports? [no] : yes // 是否启用 OpenSSL 支持 // 是否启用 SSL 加密,如果你是通过 Swoole 提供对外的 HTTPS 服务,则需要启用此项。 // 我的 Mac 是本地开发用,所以不启用。 enable openssl support? [no] : no // 是否启用 HTTP2 支持 // 了解 HTTP2 新特性 https://zh.wikipedia.org/wiki/HTTP/2 enable http2 support? [no] : yes // 是否启用异步 Redis 支持 // Swoole 实现了一套支持异步的 Redis 服务端框架 // https://wiki.swoole.com/wiki/page/p-redis_server.html enable async-redis support? [no] : yes // 是否启用 MySQL 原生支持 enable mysqlnd support? [no] : yes // 是否启用 PgSQL 协程客户端支持 enable postgresql coroutine client support? [no] : yes
然后在/etc/php.d目录下,添加swoole.ini文件
内容如下:
extension=swoole.so
然后重启php-fpm
systemctl restart php-fpm.service
查看是否安装
php -m
如果出现了下面错误,代表需要安装gcc,返回第一步
configure: error: in /var/tmp/pear-build-root97MoHr/swoole-4.4.17':
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See
config.log’ for more details
如果出现了下面错误,是swoole找不到mysqlnd组件,如果系统已经安装了mysqlnd需要在/etc/php.d/目录下添加swoole.ini文件,没安装需要安装。
PHP Warning: PHP Startup: Unable to load dynamic library ‘swoole.so’ (tried: /usr/lib64/php/modules/swoole.so (/usr/lib64/php/modules/swoole.so: undefined symbol: mysqlnd_cset_escape_slashes), /usr/lib64/php/modules/swoole.so.so (/usr/lib64/php/modules/swoole.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
如果还不行,可以试试下面的方法
1. vim /etc/ld.so.conf
- 添加 /usr/local/lib
- sudo ldconfig
参考文章: