webentwicklung-frage-antwort-db.com.de

MySQL-Python kann nicht mit Pip unter MacOS 10.12.4 installiert werden

Folgender Fehler beim Ausführen von pip install mysql-python

Collecting mysql-python
  Using cached MySQL-python-1.2.5.Zip
    Complete output from command python setup.py Egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/private/var/folders/b_/xh05hxwd0lzc3rm858jsypdc0000gn/T/pip-build-AWDYaP/mysql-python/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "setup_posix.py", line 53, in get_config
        libraries = [ dequote(i[2:]) for i in libs if i.startswith(compiler_flag("l")) ]
      File "setup_posix.py", line 8, in dequote
        if s[0] in "\"'" and s[0] == s[-1]:
    IndexError: string index out of range

    ----------------------------------------
Command "python setup.py Egg_info" failed with error code 1 in /private/var/folders/b_/xh05hxwd0lzc3rm858jsypdc0000gn/T/pip-build-AWDYaP/mysql-python/

Ich habe die Anweisungen in this befolgt, um setuptools neu zu installieren, und ich habe Python von https://www.python.org/ neu installiert.

which -a python gibt

/Library/Frameworks/Python.framework/Versions/2.7/bin/python
/usr/local/bin/python
/usr/bin/python

Der Fehler scheint seit der Installation des MacOS 10.12.4-Updates aufgetreten zu sein

6
Franco

Damit gelöst

brew install mysql
pip install MySQL-python
27
Franco

Wenn Sie immer noch mit etwas wie "Fehler beim Bauen des Rades für MySQL-Python" versagt haben, versuchen Sie es

LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysql-python

was für mich wie ein Zauber wirkt.

9
Donald

Wenn Sie wie ich sind und MySQL von Source in Mac installiert haben, vergessen Sie nicht, wer Brew verwenden soll - Ihr Rechner hat bereits MySQL-Connector-C. Wenn Sie mysql-connector-c installiert haben, deinstallieren Sie mysql-connector-c und versuchen Sie, pip mysql-python erneut zu installieren (Python 3).

4
mpoletto

Das hat für mich funktioniert (macOS Mojave 10.14.2):

brew install [email protected]
brew link --force [email protected]
brew install mysql-client
LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysql-python
2
Ivan Kvas

Das hat für mich funktioniert:

    brew install [email protected]
    brew link --force [email protected]
2
Andrews Opoku

Bei mir hat das geklappt:

brew install mysql-connector-c 
pip install MySQL-python
pip install mysql-connector
1
David Webster

Um dies zu beheben, sollten Sie die Datei mysql_config bearbeiten. 

Geben Sie dazu den Befehl ein:

vi `which mysql_config`

Dadurch wird der Editor mysql_config in vi geöffnet.

Drücken Sie i, um sich im Einfügemodus zu befinden

Finde jetzt Zeilen

# Create options 
libs="-L$pkglibdir"
libs="$libs -l "

für mich ist es in Zeile 118. Die obigen Zeilen sollten in geändert werden

# Create options 
libs="-L$pkglibdir"
libs="$libs -lmysqlclient -lssl -lcrypto"

Drücken Sie nun die Taste esc, um den Einfügemodus zu verlassen und den hinzugefügten Inhalt zu speichern Geben Sie den Befehl :wq im vi-Editor ein.

Versuchen Sie nun, das MySQL-Python-Modul mit pip erneut zu installieren.

Beachten Sie, dass davon ausgegangen wird, dass mysql und openssl installiert sind

0
padippist