刚用 AI 写了个处理 YAML 的小工具,因为是 php 写的,直接用了 yaml 扩展。

一运行发现我本地的 php8.3 还没安装 yaml 扩展,虽然可以改成使用第三方包,但觉得还是安装一下试试。

执行 pecl install yaml,提示找不到 libyaml 包。

checking for yaml headers... not found
configure: error: Please install libyaml
ERROR: `/private/tmp/pear/temp/yaml/configure --with-php-config=/opt/homebrew/opt/php/bin/php-config --with-yaml' failed

于是赶紧用 brew install libyaml 安装了一下,重新执行 pecl install yaml,还是报错。

看来是找不到 libyaml,但我明明已经安装成功了。

搜了一圈,找到了一个设置环境变量的办法,但实测并没有作用。

最后发现 stackoverflow 上有个办法,稍微修改了一下发现可以解决:

echo $(brew --prefix libyaml) | pecl install yaml

实测安装成功,有图为证:

2024-11-08T19:35:33.png

单独测试了一下 brew --prefix libyaml,发现输出的是 libyaml 的路径,看来是直接把这个路径传递给 pecl 了。

$ brew --prefix libyaml
/opt/homebrew/opt/libyaml

标签: macos, php, brew, pecl, yaml, libyaml

添加新评论