2016-11-14 1 views
7

Ich habe Probleme bei der Installation von mysql-Python. Erstellt ein neues virtualenv und wenn mysql-Python-Installation ... hier ist die Fehlermeldung:Fehler beim Installieren von mysql-python: Bibliothek nicht gefunden für -lssl

(env)$ pip install mysql-python 
Collecting mysql-python 
... 

clang -bundle -undefined dynamic_lookup -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk build/temp.macosx-10.12-x86_64-2.7/_mysql.o -L/usr /local/Cellar/mysql/5.7.16/lib -lmysqlclient -lssl -lcrypto -o build/lib.macosx-10.12-x86_64-2.7/_mysql.so 
ld: library not found for -lssl 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 
error: command 'clang' failed with exit status 1 

Homebrew verwenden, habe ich installiert:

schon probiert t o brew link aber brauen weigert sich, dies zu tun.

Das Betriebssystem ist MacOS Sierra.

Kann jemand helfen? Vielen Dank!

Antwort

9

es mit diesen Schritten gelöst:

brew uninstall mysql 
brew install mysql-connector-c 
pip install mysql-python 
brew unlink mysql-connector-c 
brew install mysql 

die Antwort hier https://stackoverflow.com/a/25920020/576192 gefunden

Nicht sicher, ob dies der richtige Weg ist, aber das ist, wie ich es lösen geführt.

+2

Funktionierte nicht für mich bei 'pip install mysql-python' – Jonny

5

war ich endlich in der Lage, es zu beheben, indem

xcode-select --install

Ich war sicher, dass ich schon getan ... aber offensichtlich hatte ich nicht. Auf jeden Fall einen Versuch wert!

1

für mich gearbeitet durch diese

$ brew uninstall mysql 
$ brew install mysql-connector-c 
$ brew unlink mysql-connector-c 
$ brew install mysql 
$ pip install mysql-python 

zu tun, die eine leicht veränderte Version des Rezept oben ist (Anmerkung: pip install am Ende)

1

Wenn Sie mysql-python installieren möchten, empfehle ich Ihnen stattdessen installieren Sie mysqlclient. Die Autoren dieser beiden Module sind gleich. Mit Abstand halten die Autoren an der Aufrechterhaltung mysqlclient fest. mysqlclient unterstützt sowohl Python 2 als auch Python 3. Und Sie können die gleichen Codes wie mysql-python verwenden. Blew ist meine Installationslösung für dich.

$ brew info openssl 
$ brew unlink mysql-connector-c 
$ brew install mysql 
$ brew link --overwrite mysql-connector-c 
$ pip install mysqlclient 

Wenn es ein Fehler vor pip install mysqlclient. Bitte beheben Sie es gemäß methane's answer. Und führen Sie pip install mysqlclient erneut.

1

Sie können den ssl-Bibliothekspfad explizit festlegen.

LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysqlclient 
Verwandte Themen