企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 环境依赖 [TOC] * 仅支持`Linux`、`FreeBSD`、`MacOS`三种操作系统 * 在`Windows`平台,可使用`CygWin`或`WSL(Windows Subsystem for Linux)` * `Linux`内核版本`2.3.32`以上 * `gcc4.4`以上版本或者`clang` * **`4.x`版本起需要`gcc-4.8`或更高版本, 编译失败请先尝试升级gcc** * 编译为`libswoole.so`作为`C/C++`库时需要使用`cmake-2.4`或更高版本 > 建议使用`Ubuntu14`、`CentOS7`或更高版本的操作系统 > 低版本系统(如`CentOS 6`)可以使用`RedHat`提供的`devtools`编译,[参考文档](https://blog.csdn.net/ppdouble/article/details/52894271) ## PHP版本依赖 * `Swoole-1.x`需要`PHP-5.3.10`或更高版本 * `Swoole-4.x`需要`PHP-7.0.0`或更高版本 * 不依赖`PHP`的`stream`、`sockets`、`pcntl`、`posix`、`sysvmsg`等扩展。`PHP`只需安装最基本的扩展即可 * 对`PHP`版本支持和`PHP`官方维护版本保持一致,参考[PHP版本支持时间表](http://php.net/supported-versions.php "PHP版本支持时间表") ~~~ PHP-7.3 版本的 pcre.jit 存在 bug,可能会导致进程持续崩溃,请修改 php.ini 设置 pcre.jit=0 ~~~ ## ARM平台(树莓派Raspberry PI) * 请使用`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 操作失败 > > 目前提供 Cygwin 二进制包,可以在官网进行下载:[https://www.swoole.com/page/download](https://www.swoole.com/page/download),如有问题请反馈至开发组邮箱 team@swoole.com ## BashOnWindows Windows 10 系统增加了 Linux 子系统支持,BashOnWindows 环境下也可以使用 swoole。安装命令 ~~~ apt-get install php7.0 php7.0-curl php7.0-gd php7.0-gmp php7.0-json php7.0-mysql php7.0-opcache php7.0-readline php7.0-sqlite3 php7.0-tidy php7.0-xml php7.0-bcmath php7.0-bz2 php7.0-intl php7.0-mbstring php7.0-mcrypt php7.0-soap php7.0-xsl php7.0-zip pecl install swoole echo 'extension=swoole.so' >> /etc/php/7.0/mods-available/swoole.ini cd /etc/php/7.0/cli/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini cd /etc/php/7.0/fpm/conf.d/ && ln -s ../../mods-available/swoole.ini 20-swoole.ini ~~~ * BashOnWindows 环境下必须关闭`daemonize`选项 * 需要修改`config.h`关闭`HAVE_SIGNALFD` ## DockerOnWindows 在`Windows`下开发可以使用`Hyper-V+Docker`来方便的开发`Swoole`应用,安装好`Docker`后再`Settings`里的`Shared Drives`选项里共享代码所在磁盘。然后使用如下命令来快速启动`Docker`容器。 ~~~ docker run --rm -t -i --name myapp -p 9501:9501 -v e:/path/to:/app:rw xutongle/php:7.1-fpm /bin/bash ~~~ * `e:/path/to`为源码所在路径 * `/app`为容器内路径 * 在`bash`里执行`cd /app && php server.php`