繁体   English   中英

MongoDB 安装:找不到“php.h”文件#include<php.h></php.h>

[英]MongoDB Install: 'php.h' file not found #include <php.h>

我正在尝试使用 PHP 和 MongoDB 作为数据库在 Mac OS Catalina 上配置 Apache 服务器。 我安装了 PHP 7.3.11。

我的 httpd 文件已将这一行注释掉:

LoadModule php7_module libexec/apache2/libphp7.so

当我运行 MongoDB 安装时,我在控制台顶部收到以下消息:

grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory

紧随其后,但最后出现以下错误:

/private/tmp/pear/install/mongodb/php_phongo.c:22:10: fatal error: 'php.h' file not found
#include <php.h>

我检查了第一条消息中列出的目录,它包含文件 php.h 但没有“zend”目录。

我已经在 Stack 和其他地方搜索了此错误消息的每个实例,但无法解决问题

如果 PHP 的构建系统找不到 PHP 的标头,则会生成此错误。 所有外部 PHP 扩展,例如 mongodb 扩展,或 xdebug 等其他扩展,都需要在编译时出现 PHP 的标头。

macOS 不提供 PHP 标头。

因为macOS不提供,所以很多人使用homebrew的brew安装PHP,它的依赖库,然后使用homebrew的“pecl”版本安装mongodb驱动。

因此,您需要执行以下步骤:

  1. 安装 PHP 及其带有自制软件的开发头文件详细解释here

  2. 使用“pecl install mongodb”安装 MongoDB PHP 扩展(就像你已经做过的那样),确保使用 pecl 的自制版本,而不是 macOS 的默认版本。 按照此

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM