2012-11-18 13 views
12

İşte benim sorun: Ben piton çalışma için MySQLdb alın olamaz. Bununla ilgili diğer yayınların çoğu, MySQL/Python'un farklı mimarilerine sahip olduğunu gösterdi. Kontrol ettim ve ikisi de 64 bit. Python 2.7.2 (standart OS X) ve en yeni MySQL, OS X 10.8.2 var.OSX 10.8.2 tarihinde Python 2.7 için MySQLdb ve İKİ 64 bit

benim orijinal hata günlükleri: MySQL db ithal etmek çalışılıyor

bana bu hata veriyor: Ben mysql-python 1.2 yüklemek ederken

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/MySQLdb/__init__.py", line 19, in <module> 
    import _mysql 
ImportError: dlopen(/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): Library not loaded: libmysqlclient.18.dylib 
    Referenced from: /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so 
    Reason: image not found 

Bu konsol çıkış yanı yararlı olabilir. 4b4

xxx-MBP:MySQL-python-1.2.4b4 me$ sudo python setup.py clean 
running clean 
removing 'build/temp.macosx-10.8-intel-2.7' (and everything under it) 
xxx-MBP:MySQL-python-1.2.4b4 me$ sudo python setup.py install 
running install 
running bdist_egg 
running egg_info 
writing MySQL_python.egg-info/PKG-INFO 
writing top-level names to MySQL_python.egg-info/top_level.txt 
writing dependency_links to MySQL_python.egg-info/dependency_links.txt 
writing MySQL_python.egg-info/PKG-INFO 
writing top-level names to MySQL_python.egg-info/top_level.txt 
writing dependency_links to MySQL_python.egg-info/dependency_links.txt 
reading manifest file 'MySQL_python.egg-info/SOURCES.txt' 
reading manifest template 'MANIFEST.in' 
writing manifest file 'MySQL_python.egg-info/SOURCES.txt' 
installing library code to build/bdist.macosx-10.8-intel/egg 
running install_lib 
running build_py 
copying MySQLdb/release.py -> build/lib.macosx-10.8-intel-2.7/MySQLdb 
running build_ext 
creating build/bdist.macosx-10.8-intel/egg 
copying build/lib.macosx-10.8-intel-2.7/_mysql.so -> build/bdist.macosx-10.8-intel/egg 
copying build/lib.macosx-10.8-intel-2.7/_mysql_exceptions.py -> build/bdist.macosx-10.8-intel/egg 
creating build/bdist.macosx-10.8-intel/egg/MySQLdb 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/__init__.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/connections.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
creating build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/__init__.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/CLIENT.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/CR.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/ER.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/FIELD_TYPE.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/FLAG.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/constants/REFRESH.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb/constants 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/converters.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/cursors.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/release.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
copying build/lib.macosx-10.8-intel-2.7/MySQLdb/times.py -> build/bdist.macosx-10.8-intel/egg/MySQLdb 
byte-compiling build/bdist.macosx-10.8-intel/egg/_mysql_exceptions.py to _mysql_exceptions.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/__init__.py to __init__.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/connections.py to connections.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/__init__.py to __init__.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/CLIENT.py to CLIENT.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/CR.py to CR.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/ER.py to ER.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/FIELD_TYPE.py to FIELD_TYPE.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/FLAG.py to FLAG.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/constants/REFRESH.py to REFRESH.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/converters.py to converters.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/cursors.py to cursors.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/release.py to release.pyc 
byte-compiling build/bdist.macosx-10.8-intel/egg/MySQLdb/times.py to times.pyc 
creating stub loader for _mysql.so 
byte-compiling build/bdist.macosx-10.8-intel/egg/_mysql.py to _mysql.pyc 
creating build/bdist.macosx-10.8-intel/egg/EGG-INFO 
copying MySQL_python.egg-info/PKG-INFO -> build/bdist.macosx-10.8-intel/egg/EGG-INFO 
copying MySQL_python.egg-info/SOURCES.txt -> build/bdist.macosx-10.8-intel/egg/EGG-INFO 
copying MySQL_python.egg-info/dependency_links.txt -> build/bdist.macosx-10.8-intel/egg/EGG-INFO 
copying MySQL_python.egg-info/top_level.txt -> build/bdist.macosx-10.8-intel/egg/EGG-INFO 
writing build/bdist.macosx-10.8-intel/egg/EGG-INFO/native_libs.txt 
zip_safe flag not set; analyzing archive contents... 
creating 'dist/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg' and adding 'build/bdist.macosx-10.8-intel/egg' to it 
removing 'build/bdist.macosx-10.8-intel/egg' (and everything under it) 
Processing MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg 
removing '/Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg' (and everything under it) 
creating /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg 
Extracting MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg to /Library/Python/2.7/site-packages 
MySQL-python 1.2.4b4 is already the active version in easy-install.pth 

Installed /Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg 
Processing dependencies for MySQL-python==1.2.4b4 
Finished processing dependencies for MySQL-python==1.2.4b4 
+0

İlginç Not, Kurulumumu temizledim ve ardından bunları takip ettim (http://birdhouse.org/blog/2009/02/21/python-mysql-connections-on-mac-os /) yönergeleri (Macports kısmı benim için çalışmadı), özellikle de 64 bit bayraklarını kullanarak yeniden oluşturdum ve sonra yeniden yüklendi. ŞİMDİ BİR YERDE HAPPENS. MySQLdb dosyasını TERMİNALDEN ÇALIŞTIR, ancak bir kod düzenleyicisinden değil. – Tizzee

+0

Ayrıca Not,/library/python, 2.3, 2.4, 2.5, 2.6 ve 2.7 için klasörler içerir, ancak 2.7'de bir şey vardır. 2,7 (/library/python/2.7/) İÇERİSİNDE bir çoklu yumurta dosyaları, bir MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg VE bir MySQL_python-1.2.4b4-py2.7-macosx var -10.8-x86_64.egg ve THOSE'un her ikisi de içinde aynı dosyalara sahipler… birini silmeli miyim? hangisini tutmalıyım? Çok sinirliyim dostum. – Tizzee

+0

Ayrıca: Ben kontrol- | terminalde pythondayken çıkılıyor ancak Python'un beklenmedik bir şekilde çıkmasını söyleyen bir OSX penceresi alıyorum. – Tizzee

cevap

13

BUNU BİLİYORUM! İşte yaptığım şey.

Tamam bu son derece sinir bozucu olmuştur.

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib 

Ama diğer şeyler bir sürü daha önce vardı: nihayet iş terminalde bu yaptığını yapılmış ne

. Ben iki kaynaktan yön karışık: Ben piton temizlemek ve inşa dosyaları değiştirmek için ilk kullanılan

How to install MySQLdb (Python data access library to MySQL) on Mac OS X? ve http://birdhouse.org/blog/2009/02/21/python-mysql-connections-on-mac-os/

... ben ...

yükleyip kurmak için 64 bit bayrakları eklemek için ikinci kullanılan

Sonra

beni kenara ayarlamak için (o iş yapılmış son şeydi hangi.) Error importing MySQLdb in Python 2.7.2 on Mac OSx 10.8.1 de bir cevap kullandı.

Ben çok şey yaptım, çünkü bir fark yarattı tam olarak ne olduğundan emin değilim. 2.7 python klasöründen… ve başka şeylerden bir sürü şey sildim. Ama emin olabileceğim tek şey, bu iki kaynaktan gelen yönleri karıştırmanın bir fark yaratması. Tüm yardımların için teşekkürler, çocuklar… .Bu umarım bu birilerinin baş ağrısını kurtarır.

0

Ben onları listeledik, karşılaştığı 4 yapılandırma engelleri listeledik.

ihracat CFLAGS = -Qunused-argümanlar ihracat CPPFLAGS = -Qunused-argümanlar xcode tercihleri ​​/ indirme işlemlerinden komut satırı araçlarını yükleyerek sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib/usr /lib/libmysqlclient.18.dylib