使用pecl在OS X El Capitan上安装Mongodb驱动程序(v10.11.1)

时间:2015-11-02 17:15:43

标签: php xcode macos mongodb osx-elcapitan

我正在尝试为OS X安装php mongo驱动程序。我试过跟these instructions无效。

$ which pecl - > /usr/local/Cellar/php56/5.6.13_2/bin/pecl

$ sudo pecl install mongo - >完整构建结果here但问题是错误:

In file included from /private/tmp/pear/install/mongo/io_stream.c:34:
/private/tmp/pear/install/mongo/contrib/php-ssl.h:33:10: fatal error: 'openssl/evp.h' file not found
#include <openssl/evp.h>

我的Xcode命令行工具是最新的(我使用$ xcode-select --install来确定)。

我确定如何解决这个问题。

4 个答案:

答案 0 :(得分:15)

我设法通过使用Homebrew(as suggested here)安装OpenSSL来解决这个问题:

$ brew install openssl
$ brew link openssl --force

然后

$ sudo pecl install mongodb

答案 1 :(得分:9)

这样做

$ cd /usr/local/include 
$ ln -s ../opt/openssl/include/openssl

答案 2 :(得分:1)

我建议将http://phpbrew.github.io/phpbrew/用于此类事情。它允许您轻松地安装任何所需的PHP版本的扩展。

安装新版本的php时,我通常会在编译时密切注意日志。可能存在需要先安装的依赖项。另外,请确保已安装更新版本的自制程序。

答案 3 :(得分:-1)

您需要禁用Mac OSXElCapitán无根机制:

  1. 使用Cmd-R
  2. 启动
  3. 打开终端
  4. 输入csrutil disable
  5. 重新启动
  6. 在Mac上,您需要安装Xcode,并为X字段附带的openssl构建符号链接,即

    cd /usr/include;
    sudo ln -s /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift-migrator/sdk/MacOSX.sdk/usr/include/openssl