编译swoole-cli 指定php版本 和插件

自行编译一般问题多多 低版本一般定制插件要自行编译
php7.33 +memcached 成品
https://github.com/jingjingxyk/swoole-cli/actions/runs/10861004482

尽量使用已经编译好的成品 https://github.com/jingjingxyk/swoole-cli/tags
最新版本8+ https://www.swoole.com/download
如有问题可以咨询工具作者 https://github.com/jingjingxyk/swoole-cli/issues


#我是乌班图系统linux Ubuntu 20   如果没有环境可以去阿里云买个抢占式编译
#apt 跟yum类似

#安装容器依赖库
sudo apt update
sudo apt upgrade
apt install apt-transport-https ca-certificates curl software-properties-common git
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

sudo apt update
sudo apt install docker-ce
#安装docker完毕



#拉取指定分支代码
git clone -b build_php_7.3 https://github.com/jingjingxyk/swoole-cli.git

#进入目录
cd swoole-cli

# 启用 alpine:3.17 容器环境 (docker pull alpine:3.17) 
# bash sapi/quickstart/linux/run-alpine-container.sh #如果失败了用这个
bash sapi/quickstart/linux/run-alpine-container-full.sh

# 进入容器
bash sapi/quickstart/linux/connection-swoole-cli-alpine.sh

# 准备基础运行环境
sh  sapi/quickstart/linux/alpine-init.sh --mirror china 
 
# 准备PHP 运行时 (看提示,把 PHP-cli 运行时导入环境变量PATH )
sh setup-php-runtime.sh  --mirror china

#编译
php prepare.php +memcached -redis
--with-swoole-pgsql=1 --with-libavif=1
--with-php-version=7.3.33
--with-build-type=release
--with-c-compiler=clang
--with-install-library-cached=1

 
# 静态编译  编译依赖库(生成静态依赖库)
bash make.sh  all-library 
 
# 静态编译 PHP 预处理
bash make.sh config 
 
# 静态编译PHP (编译、汇编、链接)
bash make.sh build 
 
# 静态编译PHP (打包)
bash make.sh archive 


# 编译结果下载  https://github.com/jingjingxyk/swoole-cli/actions/runs/10861004482


# php 8.2.7
--with-php-version=8.2.7 
 
# php 8.1.21
--with-php-version=8.1.21
 
# php 7.4.33
--with-php-version=7.4.33
 
# 构建php7.4 7.3 版本需要特别处理之处(更换分支即可)
# php 7.4 、7.3 分支需要单独克隆

#( 区别: openss 使用 v1 版本, curl 库 不启用http2库 http3库 ,GD 库因libXpm编译失败,默认未启用)

#除了更换分支,构建步骤仍然如上

# php 7.4 
git clone -b build_php_7.4  https://github.com/jingjingxyk/swoole-cli/
 
# php 7.3 
 git clone -b build_php_7.3  https://github.com/jingjingxyk/swoole-cli/
 

 Swoole 最新版扩展  ZTS 专用

git clone https://github.com/swoole/swoole-src.git
cd swoole-src
phpize
./configure --enable-swoole-thread
make -j $(nproc)
make install

Swoole-Cli 在 Windows 平台的支持已经较为完善,主要通过 Cygwin64 编译的方式实现对 Windows 的兼容性支持。Swoole-Cli 5.0.1 版本开始,官方提供了针对 Windows(基于 Cygwin)的二进制包,这大大简化了在 Windows 上的部署与开发流程。 ### 安装方法 1. **下载 Swoole-Cli** 用户可以直接从官方提供的资源中下载适用于 Windows 的 Swoole-Cli 二进制包。该版本基于 Cygwin 构建,能够在 Windows 环境下运行,并支持 PHP 的多种扩展[^2]。 2. **配置环境变量** 下载完成后,将解压后的 Swoole-Cli 目录添加到系统环境变量 `PATH` 中,这样可以在命令行中直接调用 `php` 或 `swoole-cli` 命令。 3. **验证安装** 打开命令提示符,输入以下命令以验证是否安装成功: ```bash php -v ``` 如果输出 PHP 版本信息,则表示安装成功。 4. **启用 Swoole 扩展** Swoole-Cli 已经集成了 Swoole 扩展,但需要在 `php.ini` 文件中启用该扩展。找到 `php.ini` 文件并添加以下行: ```ini extension=swoole ``` 保存后重启 Swoole HTTP Server 或使用 `php -m` 检查是否加载了 Swoole 模块[^3]。 ### 功能支持 Swoole-Cli 在 Windows 平台支持以下功能: - **PHP 版本同步**:Swoole-Cli 保持与最新 PHP 版本的同步,当前版本支持 PHP 8.1.12。 - **常用扩展集成**:包括对 MongoDB 等数据库扩展的支持。 - **内置 HTTP Server PHP-FPM**:简化了 Web 服务的开发测试流程,用户无需额外安装 Apache 或 Nginx 即可进行开发[^2]。 ### 开发建议 尽管 Swoole-Cli 已经可以在 Windows 上运行,但仍建议开发者优先考虑使用 WSL(Windows Subsystem for Linux)或直接使用 Linux/MacOS 进行开发。WSL 提供了一个接近原生 Linux 的环境,能够更好地支持 Swoole 的异步特性,避免 Windows 平台可能存在的兼容性问题[^1]。 如果必须在 Windows 上进行开发,可以考虑以下几点优化体验: - 使用 WSL2 以获得更好的性能兼容性。 - 在 Windows 上使用 Docker 容器化开发环境,确保与生产环境的一致性。 - 利用远程开发工具(如 VS Code Remote - SSH)连接到 Linux 服务器进行开发。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值