2010-08-01 4 views
0

Je cours Mac OSX. Jusqu'à aujourd'hui j'avais Python 2.6 avec psycopg2 fonctionnant très bien, je l'utilisais avec Django et Pylons. Je viens reintalled postgres (je ne sais pas si cela est connecté) et tout à coup, je ne peux pas importer psycopg2 en Python sans erreur étrange:Erreur Python - psycopg2: aucune architecture 64 bits appropriée?

>>> import psycopg2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "build/bdist.macosx-10.6-universal/egg/psycopg2/__init__.py", line 69, in <module> 
    File "build/bdist.macosx-10.6-universal/egg/psycopg2/_psycopg.py", line 7, in <module> 
    File "build/bdist.macosx-10.6-universal/egg/psycopg2/_psycopg.py", line 6, in __bootstrap__ 
ImportError: /usr/lib/libpq.5.dylib: no appropriate 64-bit architecture (see "man python" for running in 32-bit mode) 

Essayer avec Python 2.5 donne une erreur similaire:

>>> import psycopg2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/opt/local/lib/python2.5/site-packages/psycopg2/__init__.py", line 69, in <module> 
    from _psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID 
ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/psycopg2/_psycopg.so, 2): Library not loaded: /opt/local/lib/postgresql84/libpq.5.dylib 
    Referenced from: /opt/local/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/psycopg2/_psycopg.so 
    Reason: no suitable image found. Did find: 
     /usr/lib/libpq.5.dylib: no matching architecture in universal wrapper 

Je n'ai aucune idée de ce que cela signifie, d'où il vient, ou quoi faire à ce sujet. S'il vous plaît quelqu'un peut-il aider?

Répondre

0

Avez-vous simplement mis à niveau Snow Leopard par hasard? La version Leopard de Python est en 32 bits, tandis que la version 64 bits est en Snow Leopard. Il casse certaines bibliothèques qui utilisent du code natif qui ne sont pas disponibles en mode 64 bits.

+0

Nope - été en utilisant Snow Leopard depuis le début ... – AP257

+0

Comment avez-vous installé postgres? Avez-vous vérifié qu'il a produit un binaire universel, ou une architecture spécifique (ressemble à x86). Je suppose que /opt/local/lib/postgresql84/libpq.5.dylib est le fichier à vérifier. Si c'est votre problème, alors lancez python en mode 32 bits (vérifiez la page de manuel) ou jetez un oeil à http://www.kyngchaos.com/software:postgres – Amoss

+1

Désinstaller psycopg2 (en utilisant easy_install -m, puis en supprimant le. oeuf) et en le réinstallant a résolu le problème. Je vais accepter votre réponse - merci pour votre aide. – AP257

Questions connexes