Python 32-битный не может найти модуль MySQLdb на OS X Lion - PullRequest
0 голосов
/ 15 сентября 2011

Я стараюсь изо всех сил и пытаюсь найти решения, позволяющие Python и MySQL хорошо играть с 64-битной архитектурой, и в решении, похоже, все компоненты установлены / работают как 32-битные.

Моя проблема в том, что по какой-то причине запуск Python в 32-битном режиме через $ arch -i386 /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

, а затем

import MySQLdb

дает мне

импорт MySQLdb Traceback (последний вызов был последним): Файл "", строка 1, в ImportError: Нет модуля с именем MySQLdb

Однако, когда я запускаю python в 64-битном режиме и пытаюсь «импортировать MySQLdb», я получаю ужас:

импорт MySQLdb Traceback (последний вызов был последним): Файл "", строка 1, в Файл "build / bdist.macosx-10.6-intel / egg / MySQLdb / init .py", строка 19, в Файл "build / bdist.macosx-10.6-intel / egg / _mysql.py", строка 7, в Файл "build / bdist.macosx-10.6-intel / egg / _mysql.py", строка 6, в bootstrap ImportError: dlopen (/Users/me/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so, 2): подходящее изображение не найдено. Нашел: /Users/me/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so: mach-o, но неправильная архитектура

Итак, мой вопрос: почему Python не может найти модуль в 32-битном режиме? ошибка «неправильной архитектуры» заставляет меня поверить, что MySQL-python установлен как 32-битный, поэтому я не думаю, что 32-битный Python не может «видеть» модуль. У меня есть и путь python, и путь .python-eggs в моем $ PATH в .bash_profile, так что мне здесь не хватает?

1 Ответ

0 голосов
/ 15 сентября 2011

Не совсем ответ, но вы пытались просто pip install MySQL-python?Если у вас есть mysql_config на вашем пути, он должен хорошо скомпилироваться.

- Я использую Python 2.7.2 через homebrew , MAMP 2.0 , работающий на 10.6.с ядром 64 бит .

...