合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
# 编译参数 [TOC] ## ⚠️新手警告: 不在此列表中的编译参数, 任何情况都请不要使用 这里是`./configure`编译配置的额外参数,用于开启某些特性 > `1.8.7`或更高版本不再需要设置`--enable-async-mysql`和`--enable-async-httpclient`,`async_mysql`和`async_httpclient`改为内置`4.0.1`或更高版本后不再需要设置`--enable-coroutine` * * * ## ☺ 通用参数 ## \--enable-sockets 增加对`sockets`资源的支持。开启此参数,`swoole_event_add`就可以添加`sockets`扩展创建的连接到`swoole`的事件循环中。另外`Server`和`Client`的`getSocket()`方法也需要依赖此编译参数。 > 依赖`sockets`扩展 ## \--enable-openssl 启用`SSL`支持 > 使用操作系统提供的`libssl.so`动态连接库 ## \--with-openssl-dir 启用`SSL`支持 并 指定`openssl`库的路径, 需跟上路径参数:`--with-openssl-dir=/opt/openssl/` ## \--enable-http2 增加对HTTP2的支持 > 依赖`nghttp2`库 ## \--with-nghttp2-dir 增加对HTTP2的支持 并 指定`nghttp2`库的路径, 需跟上路径参数:`--with-nghttp2-dir=/opt/nghttp2/` > 需要`4.2.0`及以上版本 ## \--enable-async-redis 增加异步Redis客户端支持 > 依赖`hiredis`库 > > 4.2.x版本可能会显示`redis-client`而没有`async`字样, 实际上是一样的 > > 4.2.6版本及以后不再需要手动安装和启用, 而是swoole自带 ## \--with-hiredis-dir 增加异步Redis客户端支持 并 指定`hiredis`库的路径, 需跟上路径参数:`--with-hiredis-dir=/opt/hiredis/` > 需要`4.2.0`及以上版本, 4.2.6版本及以后不再需要手动安装和启用hiredis, 而是swoole自带 ## \--enable-mysqlnd 启用`mysqlnd`支持,启用`swoole_mysql::escapse`方法。启用此参数后,`PHP`必须有`mysqlnd`模块,否则会导致`swoole`无法运行。 > 依赖`mysqlnd`模块 ## \--enable-coroutine-postgresql 启用协程Postgresql客户端 > 依赖libpq库 ## \--with-libpq-dir 指定`libpq`库的路径.`--with-libpq-dir=/etc/postgresql` ## ☻ 已废弃的编译参数 ## \--enable-coroutine > 4.0.1版本后移除了此编译选项, 默认强制打开, 可使用$server->set动态开关 > > enable\_coroutine动态配置请见[文档](enable\_coroutine.md) 启用协程 ##  Debug参数 ## \--enable-debug-log(>=4.2.0) 打开内核DEBUG日志。**生产环境不可以启用** ## \--enable-trace-log 打开追踪日志,开启此选项后swoole将打印各类细节的调试日志, 仅内核开发时使用 ## ☠️以下试验性质选项轻易绝不要开启 ## \--enable-ringbuffer 开启`RingBuffer`内存池 > 此设置为试验性质,主要用于提升性能,生产环境请不要开启 ## \--enable-timewheel 启用时间轮算法,优化心跳检测性能 > 此设置为试验性质 ## ☠️以下选项需要在你知道它是如何工作的时候方可添加 ## \--enable-asan 详情: https://wiki.swoole.com/wiki/page/939.html 使用 asan 内存检测 ## 以下选项是编译PHP而不是Swoole时使用的 ## \--enable-swoole 使用swoole扩展 ## \--enable-swoole-static 将Swoole静态编译内嵌到PHP