Mac 如何编译 PHP 8.0 到 MxSrvs 工具

前言

首先,十分感谢开发 MxSrvs 的作者,能让在 Mac 上开发 PHP 变得如此简单,并且不那么繁琐。
我手动编译有两条原因:

1.毕竟现在 PHP 8.1 都出很久了,再不使用一下 8 版本,好像要有亿点点?? 说不过去

2.MxSrvs 提供的已编译好的最高版本仅到 PHP 7.4.6

因为以前想编译 PHP 7.2 的时候,跟作者发过邮件沟通,作者给的回复是正常编译就好。最后发现,作者提供了后续一些好用的版本编译,我也就没有自己实际操作过去编译到本地以及去适配到 Mxsrvs 这个工具。

开始准备工作

下载 PHP 8.0

PHP 官方下载
下载PHP 8.0.16 版本
进入到 MxSrvs 的主程序路径下的 /Applications/MxSrvs/bin ,根据 Mxsrvs 的命名规则,创建一个 php_8.0.16 文件夹,用来存放我们编译后的文件
进入目录有两种方法:

1、点击 MxSrvs 工具状态栏小图标 -> 定位目录 -> 主程序目录 -> 双击进入 bin 文件夹
MxSrvs 主程序目录

2、打开访达 -> 应用程序 -> 右边搜索 MxSrvs -> 双击进入 MxSrvs -> 双击进入 bin 文件夹
通过访达直接一步一步进入

编译开始

解压下载的文件,得到 [ php-8.0.16] 文件夹
开始编译
编译命令:

./buildconf --force./configure --prefix=/Applications/MxSrvs/bin/php_8.0.16 \--with-config-file-path=/Applications/MxSrvs/bin/php_8.0.16/etc \--with-mysqli=mysqlnd   \--with-pdo-mysql=mysqlnd   \--with-pear   \--with-zlib  \--with-curl  \--enable-mysqlnd \--enable-pdo   \--enable-fpm   \--enable-cli   \--without-iconv sudo make && sudo make installsudo cp php.ini-development /Applications/MxSrvs/bin/php_8.0.16/etc/php.ini

等编译跑完,编译期间需要输入两次(电脑)密码,因为用了 sudo
一般安装的时候,也不会遇到太多的缺失的组件之类的。如果缺东西,基本是缺什么安装什么即可

brew install xxxx

然后再次编译就行了。

适配 MxSrvs

我们重启 MxSrvs 工具,这个时候就可以看到我们编辑的 PHP 版本了,切换到 8.0.16 ,这个时候点击启动按钮是启动不了的。
中间的启动错误图,因为没有截图,所以…

第一步,把所有编译的时候,配置的文件夹名称 php_8.0.16 替换成 php ,因为 MxSrvs 会在你切换 PHP 版本的时候,会把当前切换版本目录改成 php

我是用 VScode ,把文件夹拖到编辑器,然后全局搜索替换的。

第二步,分别把 /Applications/MxSrvs/bin/php/etc 目录下的文件 php-fpm.conf.default 复制到当前目录并重命名为 php-fpm.conf,还有就是 /Applications/MxSrvs/bin/php/etc/php-fpm.d 下的 www.conf.default 复制到当前目录并重命名为 www.conf

第三步,也是比较重要的一步,需要把我们编辑的 PHP 版本的配置文件 /Applications/MxSrvs/bin/php/etc/php.ini 与 MxSrvs 提供的版本的 pph.ini 逐行对比,然后修改成对应的相应配置。

这个时候基本那就可以说是做了所有的工作,可以享受成果了。
最终编译 PHP 8.0 适配 MxSrvs 完成

以上就是Mac 如何编译 PHP 8.0 到 MxSrvs 工具的详细内容,更多请关注www.sxiaw.com其它相关文章!