安装 PHP 7.2 扩展 pdflib,模块错误
Installing PHP 7.2 extension pdflib, module error
我正在尝试在我之前已经安装的 PHP 7.2 上安装 pdflib。不知何故,我不久前用 Homebrew 重组了我的 PHP 安装。在那次重组之前,我在 /usr/local/etc/php/7.2/extensions
中进行了扩展。我只需要在 php.ini
中引用我的 .so 文件,一切正常。
重组后我使用 pecl 安装了新的扩展。现在我在 usr/local/lib/php/pecl/20170718
中有了我的扩展,它在我的 php.ini
中也被引用为 extension_dir
。但是,如果我将 pdflib.so
放入此目录并将其注册到 php.ini
中,则会出现以下错误:
Warning: PHP Startup: PDFlib: Unable to initialize module
Module compiled with module API=20160303
PHP compiled with module API=20170718
These options need to match`Warning: PHP Startup: PDFlib: Unable to
initialize module
我该如何解决这个问题,或者有没有办法回滚到旧配置?
Module compiled with module API=20160303
PHP compiled with module API=20170718
此消息表明已加载 PDFlib DSO,它是为较旧的 PHP(PHP 7.1)构建的。
我看到两个可能的问题:
- 不小心加载了一个不同的扩展。例如由于名称不同。 (
php_pdflib.so
对比 pdf.so
)
- 你的 PECL 构建出错了,它是针对旧的 PHP 7.1.
构建扩展
我会推荐
- 检查你的 php.ini 并删除所有带有 pdf 的扩展
- 从官网下载最新的PDFlib 9.1.2并解压
- 将正确的 DSO (php_pdflib.so) 复制到您的 extension_dir
- 立即将
extension=php_pdflib.so
添加到您的 php.ini
希望对您有所帮助,
莱纳
我正在尝试在我之前已经安装的 PHP 7.2 上安装 pdflib。不知何故,我不久前用 Homebrew 重组了我的 PHP 安装。在那次重组之前,我在 /usr/local/etc/php/7.2/extensions
中进行了扩展。我只需要在 php.ini
中引用我的 .so 文件,一切正常。
重组后我使用 pecl 安装了新的扩展。现在我在 usr/local/lib/php/pecl/20170718
中有了我的扩展,它在我的 php.ini
中也被引用为 extension_dir
。但是,如果我将 pdflib.so
放入此目录并将其注册到 php.ini
中,则会出现以下错误:
Warning: PHP Startup: PDFlib: Unable to initialize module
Module compiled with module API=20160303
PHP compiled with module API=20170718
These options need to match`Warning: PHP Startup: PDFlib: Unable to
initialize module
我该如何解决这个问题,或者有没有办法回滚到旧配置?
Module compiled with module API=20160303
PHP compiled with module API=20170718
此消息表明已加载 PDFlib DSO,它是为较旧的 PHP(PHP 7.1)构建的。
我看到两个可能的问题:
- 不小心加载了一个不同的扩展。例如由于名称不同。 (
php_pdflib.so
对比pdf.so
) - 你的 PECL 构建出错了,它是针对旧的 PHP 7.1. 构建扩展
我会推荐
- 检查你的 php.ini 并删除所有带有 pdf 的扩展
- 从官网下载最新的PDFlib 9.1.2并解压
- 将正确的 DSO (php_pdflib.so) 复制到您的 extension_dir
- 立即将
extension=php_pdflib.so
添加到您的 php.ini
希望对您有所帮助, 莱纳