php8.1版本打包二进制 zend_mm_heap corrupted

tanhongbin

问题描述

zend_mm_heap corrupted php8.1版本打包二进制 后执行webman.bin start -d 出现这个错误,不加-d 反而没有

程序代码或配置

![截图](/upload/img/20230524/24646d6326d8f8.png)

重现问题的步骤

截图

操作系统环境及workerman/webman等具体版本

webman1.5.5 php8.1

678 2 0
2个回答

北月

破案了,PHP8.1.15 版本有问题,PHP8.1.19 正常运行。

截图

截图

最后附上下载链接:https://github.com/fuzqing/static-php-cli/suites/13105197934/artifacts/711541418

建议自己 fork walkor/static-php-cli 然后修改 .github/workflows/build-php.yml 里面的 PHP 版本。

==========
自己打包 webman.bin 二进制的步骤如下:

  1. 执行:php -d phar.readonly=0 webman build:phar

  2. 下载 static-php-cli_8.1.19_x86_64.zip

  3. 把下载到的压缩文件解压,然后把 micro.sfx 放到 webman 项目的 build 文件夹,然后执行 cd build && cat micro.sfx webman.phar > webman.bin && chmod +x webman.bin

walkor

感谢反馈
官网php8.1打包已经升级到8.1.19,删除 build/ 目录下的所有文件,然后重新打包试下

🔝