静态编译PHP运行时

编译步骤这样划分:

  1. 下载指定版本PHP源码
  2. 下载对应版本的扩展
  3. 下载扩展对应版本的依赖库
  4. 静态编译扩展依赖库
  5. 静态编译之前,准备工作
  6. 修改相应参数
  7. 执行编译
  8. 执行构建
  9. 打包

不同操作系统,不同cpu架构,都执行一遍上面的流程。
linux macos window + CPU arch

MacOS, Windows, Linux x86/x86_64/arm/aarch64/mips/mipsel

快速进入编译环节(跳过安装依赖库环节,借助容器,使用提前编译好依赖库)


#!/bin/bash
__DIR__=$(
  cd "$(dirname "$0")"
  pwd
)

# default_image=jingjingxyk/build-swoole-cli:build-dependencies-alpine-edge-20230226T074232Z

default_image=registry.cn-beijing.aliyuncs.com/jingjingxyk-public/app:build-swoole-cli-build-dependencies-alpine-edge-20230226T074232Z
image=$default_image

docker run --rm --name  swoole-cli-build-dev-all-dependencies-container -d -v ${__DIR__}:/work -w /work $image tail -f /dev/null

编译脚本

下载已经编译好的PHP运行时

  1. PHP runtime 下载站点 1 static-php-cli
  2. PHP runtime 下载站点 2 swoole-cli
  3. PHP runtime 下载站点 3 swoole-cli

编译静态PHP 解析器 参考文档

参考文档

实践代码

相关讨论

下载已经编译好的PHP运行时

  1. PHP runtime 下载站点 1 static-php-cli
  2. PHP runtime 下载站点 2 swoole-cli
  3. PHP runtime 下载站点 3 swoole-cli
版权声明:本文为jingjingxyk原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/jingjingxyk/p/17079883.html