2012-08-02 11 views
10

Jestem nowy w Pythonie i mam problem z budowaniem MySQLdb, próbując uruchomić pakiet SDK Google AppEngine. I właśnie uaktualniony z systemu Snow Leopard do Mountain Lion i zainstalowano najnowszą XCode (4.4)Jak zainstalować MySQLdb na Mountain Lion

Pobrałem http://sourceforge.net/projects/mysql-python/

python setup.py build 

uzyskać następujące wyjścia w terminalu

running build 
running build_py 
creating build 
creating build/lib.macosx-10.8-intel-2.7 
copying _mysql_exceptions.py -> build/lib.macosx-10.8-intel-2.7 
creating build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/__init__.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/converters.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/connections.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/cursors.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/release.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
copying MySQLdb/times.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
creating build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/__init__.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/CR.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.macosx-10.8-intel- 2.7/MySQLdb/constants 
copying MySQLdb/constants/ER.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/FLAG.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/REFRESH.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
copying MySQLdb/constants/CLIENT.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb/constants 
running build_ext 
building '_mysql' extension 
creating build/temp.macosx-10.8-intel-2.7 
clang -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -pipe -Dversion_info=(1,2,3,'final',0) -D__version__=1.2.3 -I/usr/local/mysql/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _mysql.c -o build/temp.macosx-10.8-intel-2.7/_mysql.o -Os -g -fno-common -fno-strict-aliasing -arch x86_64 
unable to execute clang: No such file or directory 
error: command 'clang' failed with exit status 1 

zarówno Następujące katalogi istnieją, nie mam pojęcia, jak rozwiązać problem z klangiem, którego nie można wykonać ...

/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 
/usr/local/mysql/include 

Odpowiedz

19

Wygląda na to, że system narzeka, że ​​nie może znaleźć numeru clang, który jest zawarty w Command Line Tools z Xcode. Czy zainstalowałeś także narzędzie?

mogą być zainstalowane przez

  • Otwórz Xcode
  • Preference (Command + ,)
  • Components w zakładce
0

Download Wydaje się, że nie jest jedyną rzeczą, którą trzeba zrobić, sprawdzam kompilator cc, który nie rozpoznaje, i nie kieruje się w prawo file, googling i znalazłem, że muszę zmienić niektóre pliki, aby znaleźć je przed budowaniem, nie kończy się, teraz, że jego rozpoznawanie nie ładuje bibliotek DYDL ... naprawdę trudno było znaleźć prawdziwą odpowiedź tylko po to, aby zacząć działać z pytonem.

0

W końcu stwierdziłem, że w ReadMe jest napisane, aby edytować plik site.cfg i umieścić tam lokalizację mysql_config.

1

Jeśli ktoś jest zainteresowany w szybki i łatwy sposób dla Mac OS X 10.8:

Zakładam, że masz Xcode to narzędzie wiersza polecenia, Python i MySQL zainstalowany.

  1. Install PIP:

    sudo easy_install pip 
    
  2. Edit ~/.profile:

    nano ~/.profile 
    

    Kopiuj i wklej następujący dwóch linii

    export PATH=/usr/local/mysql/bin:$PATH 
    export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/ 
    

    zapisać i wyjść.Afterwords wykonać następujące polecenie

    source ~/.profile 
    
  3. instaluję MySQLdb

    sudo pip install MySQL-python 
    

    Aby sprawdzić, czy wszystko działa poprawnie tylko spróbować

    python -c "import MySQLdb" 
    

To działało jak urok dla mnie. Mam nadzieję, że to pomoże.

+0

To działało dla mnie, oprócz tego, że użyłem .bash_profile zamiast .profile – mlbright

Powiązane problemy