Как установить MySQLdb на Mountain Lion

Я новичок в Python, и мне сложно создавать MySQLdb, пытаясь запустить Google AppEngine SDK. Я только что обновился от Snow Leopard до Mountain Lion и установил последнюю версию XCode (4.4)

Я загрузил http://sourceforge.net/projects/mysql-python/

python setup.py build 

Я получаю следующий вывод в терминале

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

оба из следующих каталогов существуют, я понятия не имею, как решить проблему, когда clang не может выполнить...

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

Ответ 1

Кажется, что система жалуется, что не сможет найти clang, который включен в Command Line Tools of Xcode. Вы также установили инструмент?

Может быть установлен через

  • Открыть Xcode
  • Предпочтение (Command + ,)
  • Components на вкладке Download

Ответ 2

Если кому-то интересен быстрый и простой способ для Mac OS X 10.8:

Я предполагаю, что у вас есть XCode, его инструмент командной строки, Python и MySQL.

  • Установить PIP:

    sudo easy_install pip
    
  • Изменить ~/.profile:

    nano ~/.profile
    

    Скопируйте и вставьте следующие две строки

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

    Сохранить и выйти. Послесловие выполните следующую команду

    source  ~/.profile
    
  • Установите MySQLdb

    sudo pip install MySQL-python
    

    Чтобы проверить, все ли работает нормально, просто попробуйте

    python -c "import MySQLdb"
    

Это работало как прелесть для меня. Надеюсь, это поможет.

Ответ 3

Кажется, что это не единственное, что вам нужно сделать, я проверяю компилятор cc, который не распознает и не направляет нужный файл, googling, я обнаружил, что мне нужно изменить некоторые файлы, чтобы найти его до его создания, не останавливается на достигнутом, теперь, когда его распознавание не заряжает библиотеки DYDL... было действительно сложно найти реальный ответ, чтобы начать работу с python.

Ответ 4

Наконец-то я нашел, что в ReadMe говорится, что он редактирует site.cfg и размещает там место mysql_config.