2015-11-02 12 views
6

Ich versuche, den php mongo-Treiber für OS X zu installieren. Ich habe versucht, these instructions vergeblich zu folgen.Mit pecl installieren Sie den Mongodb-Treiber unter OS X El Capitan (v10.11.1)

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

$ sudo pecl install mongo -> Voll Bauergebnisse here aber das Problem das ist der Fehler:

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> 

Mein Xcode Kommandozeilen-Tools sind auf dem neuesten Stand (I verwendet $ xcode-select --install zu sein sicher).

Ich bin sicher, wie Sie dieses Problem beheben.

+1

Warum meine Frage abstimmen? Ich habe das Thema recherchiert und kann keine Lösung für El Capitan finden. – RobertJoseph

Antwort

15

habe ich es geschafft, dies zu umgehen, indem OpenSSL Homebrew (as suggested here) installieren:

$ brew install openssl 
$ brew link openssl --force 

Dann

$ sudo pecl install mongodb 
+2

hat nicht für mich funktioniert –

+4

Insbesondere 'Mongo' ist der verpasste Paketname; Leute sollten 'mongodb' verwenden. Die erzwungene Brühung funktioniert auch mit dem neueren Paket 'mongodb'. Vielen Dank! –

+0

@EzekielVictor Gespeichert mein Tag! – Sibidharan

1

Ich empfehle http://phpbrew.github.io/phpbrew/ für diese Art von Sache. Es ermöglicht Ihnen die einfache Installation von Erweiterungen für jede benötigte php-Version.

Wenn ich eine neue Version von PHP installiere, behalte ich normalerweise das Protokoll, während es kompiliert. Möglicherweise gibt es Abhängigkeiten, die zuerst installiert werden müssen. Stellen Sie außerdem sicher, dass Sie eine aktualisierte Version von Homebrew installiert haben.

-1

Sie benötigen die Mac OSX El Capitán wurzellos Mechanismus deaktivieren:

  1. Boot mit Cmd-R
  2. Open Terminal
  3. Typ csrutil
  4. Reboot

Auf dem Mac deaktivieren, müssen Sie Xcode installieren und den Symlink bauen für die openssl mit Xcode kommt, das heißt

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

dies tun

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

Ich hatte bereits openssl und pkg-config und bekam immer noch den Fehler. Diese Lösung funktionierte für mich. –

+0

Dies funktionierte für mich auch, nachdem alle anderen online verfügbaren Lösungen ausgeschöpft wurden. – carterh062

Verwandte Themen