标签:cli swoole phpize Swoole 扩展 Lnmp ini php5 php
环境
LNMP运行环境(Ubuntu14.04 PHP5.5.9 ),系统包含以下运行软件 nginx1.4.6 mysql5.5.44 php5.5.9 apt-get安装,保证系统的纯净,配套组合,运行程序安全稳定。
下载swoole
- 下载 swoole 安装包
$ wget pecl.php.net/get/swoole-1.7.21.tgz
- 解压 swoole 安装包
$ tar zxvf swoole-1.7.21.tgz
- 进入 swoole 目录
$ cd swoole-1.7.21
运行phpize
- 查看 phpize 的位置
$ whereis phpize
phpize:
以上输出说明 phpize 不存在,先进行安装。
- 安装 phpize
$ apt-get update && apt-get install -y php5-dev
- 再次查看 phpize 的位置
$ whereis phpize
phpize: /usr/bin/phpize /usr/share/man/man1/phpize.1.gz
以上的输出说明已经成功安装 phpize,可以看到 phpize 的位置在
/usr/bin/phpize
。
- 运行 phpize
$ /usr/bin/phpize
phpize 是一个运行脚本,主要作用是检测 php 的环境以及在特定的目录生成相应的 configure 文件,这样 make install 之后,生成的 .so 文件才会自动加载到 php 扩展目录下面。
安装swoole
- 查看 php-config 的位置
$ whereis php-config
php-config: /usr/bin/php-config /usr/share/man/man1/php-config.1.gz
- 配置
$ ./configure --with-php-config=/usr/bin/php-config
./configure 的作用是对即将安装的软件进行配置,检查当前的环境是否满足要安装软件的依赖,–with-php-config 参数是来指定使用哪一个 php 版本来编译。
- 构建
$ make && make test
当 configure 配置完毕后,可以使用 make 命令执行构建。这个过程会执行在 Makefile 文件中定义的一系列任务将软件源代码编译成可执行文件。如果报错
fatal error: pcre.h
,执行apt-get install -y libpcre3-dev
。make test 是对 make 的检查,确保通过所有的测试。
- 安装
$ make install
Installing shared extensions: /usr/lib/php5/20121212/
make install 命令是将可执行文件、第三方依赖包和文档复制到正确的路径。以上输出的就是 php 扩展(extension dir)的路径,安装成功的 swoole.so 就在该目录里。
- 查看 php 的配置文件
$ php --ini
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/05-opcache.ini,
/etc/php5/cli/conf.d/10-pdo.ini,
/etc/php5/cli/conf.d/20-json.ini,
/etc/php5/cli/conf.d/20-mysql.ini,
/etc/php5/cli/conf.d/20-mysqli.ini,
/etc/php5/cli/conf.d/20-pdo_mysql.ini,
/etc/php5/cli/conf.d/20-readline.ini
- 手动创建 swoole 配置文件
$ echo extension=swoole.so >> /etc/php5/cli/conf.d/20-swoole.ini
- 查看 swoole 扩展
$ php -m | grep swoole
swoole
以上输出说明 swoole 已安装成功。
标签:cli,swoole,phpize,Swoole,扩展,Lnmp,ini,php5,php 来源: https://blog.csdn.net/qq_35505543/article/details/121521087
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。