环境
LNMP运行环境(Ubuntu14.04 PHP5.5.9 ),系统包含以下运行软件 nginx1.4.6 mysql5.5.44 php5.5.9 apt-get安装,保证系统的纯净,配套组合,运行程序安全稳定。
下载swoole
$ wget pecl.php.net/get/swoole-1.7.21.tgz
$ tar zxvf swoole-1.7.21.tgz
$ cd swoole-1.7.21
运行phpize
$ whereis phpize
phpize:
以上输出说明 phpize 不存在,先进行安装。
$ apt-get update && apt-get install -y php5-dev
$ whereis phpize
phpize: /usr/bin/phpize /usr/share/man/man1/phpize.1.gz
以上的输出说明已经成功安装 phpize,可以看到 phpize 的位置在/usr/bin/phpize 。
$ /usr/bin/phpize
phpize 是一个运行脚本,主要作用是检测 php 的环境以及在特定的目录生成相应的 configure 文件,这样 make install 之后,生成的 .so 文件才会自动加载到 php 扩展目录下面。
安装swoole
$ 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 --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
$ echo extension=swoole.so >> /etc/php5/cli/conf.d/20-swoole.ini
$ php -m | grep swoole
swoole
以上输出说明 swoole 已安装成功。
|