2010-11-17 10 views
5

Ho appena installato Python 2.6.6 da fonti e cosa ottengo:Python e modulo hashlib

>>> import hashlib 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/usr/local/lib/python2.6/hashlib.py", line 136, in <module> 
    md5 = __get_builtin_constructor('md5') 
    File "/usr/local/lib/python2.6/hashlib.py", line 63, in __get_builtin_constructor 
    import _md5 
ImportError: No module named _md5 
+0

Sei sicuro di avere tutti gli aggiornamenti per questa versione di Python? Forse stai usando qualcosa che è deprecato. Ho provato ad importare hashlib. dir (hashlib._md5). con risultati negativi. Prova a reinstallare? – inspectorG4dget

+0

@ inspectorG4dget: è stato installato 10 minuti fa. Lo stesso in Python 2.6 e 2.7 – zerkms

+0

Che piattaforma stai compilando per e/o su? Ho scoperto che quando si esegue una cross-compilazione, l'hashlib è la cosa più probabile da rompere. –

risposta

7

Installare openssl-dev e ricostruire.

0

Ho appena testato questo sulla mia installazione 2.6.6 e ho avuto nessun problema. Potresti provare a reinstallare. Inoltre, non sono sicuro che il modulo hashlib possa essere installato separatamente, ma potresti provare anche tu.

Inoltre, si può provare a importare funzioni specifiche da hashlib e fornire l'output?

>>> from hashlib import sha512 

perché se non hai bisogno di MD5, potresti evitare il problema.

+1

è stato installato 10 minuti fa. Non vedo alcuna ragione per cui la reinstallazione possa aiutare – zerkms

0

Si dovrebbe avere un md5.so da qualche parte, se non è sul percorso Python, penso che potrebbe causare questo problema. Ho incontrato questo problema prima.

Fatemi sapere se questo aiuta.

+0

Sei sicuro che 'md5.so' è un nome corretto? – zerkms