方法
- 仅支持Linux,FreeBSD,MacOS,3类操作系统
- Linux内核版本2.3.32以上
- PHP5.3.10以上版本,包括PHP7
- gcc4.4以上版本或者clang
- cmake2.4+,编译为libswoole.so作为C/C++库时需要使用cmake
建议使用Ubuntu14/CentOS7或更高版本的操作系统
PHP版本依赖
- swoole仅支持PHP5.3.10或更高版本,建议使用PHP5.4+
- swoole不依赖php的stream、sockets、pcntl、posix、sysvmsg等扩展。PHP只需安装最基本的扩展即可
推荐使用的Linux发行版
- CentOS6.2+
- Ubuntu12+
- Debian6+
ARM平台(树莓派Raspberry PI)
- 请使用swoole-1.7.10或更高版本
- 使用GCC交叉编译
- 在编译Swoole时,需要手工修改Makefile去掉-O2编译参数
MIPS平台(OpenWrt路由器)
- 请使用swoole-1.7.21或更高版本
- 使用GCC交叉编译
CygWin环境支持(Windows系统)
swoole-1.7.7增加了对cygwin环境的支持,在Windows环境下,可以直接使用cygwin + php 来跑swoole程序。
- 安装cygwin,并安装gcc、make、autoconf、php 4个包
- 下载swoole源码,在cygwin-shell中进行phpize/configure/make/make install
- 修改php.ini,加入swoole.so
cygwin模式下需要对PHP进行简化,去掉不使用的扩展,避免进程占用内存过大,导致Fork操作失败
BashOnWindows
Windows 10系统增加了Linux子系统支持,BashOnWindows环境下也可以使用swoole。安装命令
~~~apt-get install libpcre3 libpcre3-dev php5 php5-dev php5-cli php5-fpm php5-curl php5-mysql php5-intl php5-xmlrpc php5-geoip php5-mysqlnd php5-mcrypt php5-memcached php5-redis php5-tidy php5-sqlite php5-json php5-gmp php5-gd php5-readline php5-imagick
pecl install swoole
echo 'extension=swoole.so' >> /usr/php5/mods-available/swoole.ini
cd /usr/php5/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
cd /usr/php5/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini
~~~
- BashOnWindows环境下必须关闭
daemonize
选项