Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

build static php cli runtime and php-fpm

NotificationsYou must be signed in to change notification settings

swoole/build-static-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

构建静态 原生 php-cli 运行时 和 fastcgi 进程管理器 php-fpm

说明

php-cli 是一个PHP的 运行时 ,默认包含 swoole 扩展

本项目 派生于swoole-cli

代码与 swoole-cli 项目的 build_native_php 分支的代码 保持一致

构建流程 与 swoole-cli 构建流程一致

项目继承swoole_cli 项目的main 分支、experiment 分支的构建功能

未对 PHP 源码 执行 裁剪、优化、添加新功能等操作

可指定 PHP 版本 构建原生 PHP 版本

可编译包含 swow 扩展

下载php-cli发行版

立即使用 php-cli

curl -fSL https://github.com/swoole/build-static-php/blob/main/setup-php-cli-runtime.sh?raw=true| bash# windows powershellirm https://github.com/swoole/build-static-php/blob/main/setup-swoole-cli-runtime.ps1?raw=true| iex# windows powershellirm https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.ps1?raw=true| iex# 来自 https://www.swoole.com/downloadcurl -fSL https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.sh?raw=true| bash -s -- --mirror china# 指定发布版本curl -fSL https://github.com/swoole/build-static-php/blob/main/setup-php-cli-runtime.sh?raw=true| bash -s -- --version  v5.1.6.0

构建文档

Clone

git clone -b main https://github.com/swoole/build-static-php.git# 或者git clone --recursive -b build_native_php  https://github.com/swoole/swoole-cli.git

快速准备 PHP 运行时

cd swoole-clibash setup-php-runtime.sh# 或者使用镜像# 来自 https://www.swoole.com/downloadbash setup-php-runtime.sh --mirror china# 使用swoole-cli# shell脚本中启用别名扩展功能‌shopt -s expand_aliases__DIR__=$(pwd)export PATH="${__DIR__}/runtime/php/:$PATH"alias php="php -d curl.cainfo=${__DIR__}/runtime/php/cacert.pem -d openssl.cafile=${__DIR__}/runtime/php/cacert.pem"which phpphp -v

快速准备运行环境

linux

如容器已经安装,可跳过执行安装 docker 命令

sh sapi/quickstart/linux/install-docker.shsh sapi/quickstart/linux/run-alpine-container.shsh sapi/quickstart/linux/connection-swoole-cli-alpine.shsh sapi/quickstart/linux/alpine-init.sh# 使用镜像源安装sh sapi/quickstart/linux/install-docker.sh --mirror chinash sapi/quickstart/linux/alpine-init.sh --mirror china

macos

如 homebrew 已安装,可跳过执行安装 homebrew 命令

bash sapi/quickstart/macos/install-homebrew.shbash sapi/quickstart/macos/macos-init.sh# 使用镜像源安装bash sapi/quickstart/macos/install-homebrew.sh --mirror chinabash sapi/quickstart/macos/macos-init.sh --mirror china

一条命令执行整个构建流程

cp build-release-example.sh build-release.sh# 按你的需求修改配置  OPTIONS="${OPTIONS} --with-libavif=1 "vi build-release.sh# 执行构建流程bash build-release.sh

生成构建脚本

composer updatephp prepare.php# 指定PHP 版本php prepare.php +inotify +mongodb -mysqli --with-php-version=8.2.13# 使用镜像站下载依赖库php prepare.php +inotify +mongodb -mysqli --with-download-mirror-url=https://php-cli.jingjingxyk.com/# 使用代理下载依赖库php prepare.php +inotify +mongodb -mysqli --with-http-proxy=socks5h://192.168.3.26:2000# 只编译单个扩展(swoole)php prepare.php +swoole --with-override-default-enabled-ext=1# 编译最新版 swoolephp prepare.php -swoole +swoole_latest# 编译最新版 swowphp prepare.php -swoole +swow_latest
  • 脚本会自动下载相关的C/C++库以及PECL扩展
  • 可使用+{ext}或者-{ext}增减扩展

构建库之前安装 库依赖 构建环境

bash make-install-deps.sh

构建C/C++ 依赖库

./make.sh all-library

编译配置

./make.sh config

构建 php-cli

./make.sh build

编译成功后会生成bin/php-{version}/bin/php

打包

./make.sh archive

打包成功后会生成php-cli-{version}-{os}-{arch}.tar.xz压缩包,包含php 可执行文件、LICENSE 授权协议文件。

授权协议

  • php-cli 使用了多个其他开源项目,请认真阅读自动生成的bin/LICENSE文件中版权协议,遵守对应开源项目的LICENSE
  • php-cli本身的软件源代码、文档等内容以Apache 2.0 LICENSE+SWOOLE-CLI LICENSE作为双重授权协议,用户需要同时遵守Apache 2.0 LICENSESWOOLE-CLI LICENSE所规定的条款

SWOOLE-CLI LICENSE

  • swoole-cli 代码进行使用、修改、发布的新项目必须含有SWOOLE-CLI LICENSE的全部内容
  • 使用swoole-cli代码重新发布为新项目或者产品时,项目或产品名称不得包含swoole 单词

About

build static php cli runtime and php-fpm

Resources

Stars

Watchers

Forks

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp