PDA

View Full Version : [Python] Errore nell'importazione di un modulo :(


Qwertid
20-05-2009, 11:40
Salve a tutti!
Sono un novizio del Python e, mio malgrado, mi trovo a dover mettere le mani su dei sorgenti di un collega che mi ha preceduto. Tale persona, quando ha svolto il suo lavoro ha utilizzato la versione 2.3.4 di Python per compatibilità con alcune librerie che ci aveva fornito l'università.

Vi spiego brevemente come è la struttura di questo progetto (uso easy eclipse for python): nella root src ho un file Main_Map.py che è il file principale che ha scritto il mio collega.

Poi ho vari package tra cui quello più importante è:

nucleus
|------>nre
.............|------> nic
...........................|------->__init__.py e altri 4 file py (forniti dall'università)

Spero sia chiara la struttura del package.

Il problema è che quando lancio il file "Main_Map.py" che funge da main appunto, mi dà come errore

Impossibile avviare l'applicazione specificata. boost_python-vc71-mt-1_31.dll non è stato trovato. Una nuova installazione dell'applicazione potrebbe risolvere il problema.

e come errore in eclipse esce:

Traceback (most recent call last):
File "D:\Documents and Settings\bruceckel\workspace\mamma\Nic_Project\src\Main_Map.py", line 9, in ?
import nucleus.nre.nic as nic
File "D:\Documents and Settings\bruceckel\workspace\mamma\Nic_Project\src\nucleus\nre\nic\__init__.py", line 1, in ?
from _nic import *
ImportError: DLL load failed: Impossibile trovare il modulo specificato.



Il file __init__.py contiene invece questo codice:

from _nic import *
from SequenceWriter import *
from XmlSequenceWriter import *
from StimulusWriter import *

Che può essere che provoca questo errore? Io pensavo fosse il trattino basso vicino nic nel codice di init ma non è così perchè nella root c'è anche un file _nic.pyd ... Avete qualche idea ? Grazie

cdimauro
20-05-2009, 12:56
Quel modulo richiede un'altra DLL per funzionare: boost_python-vc71-mt-1_31.dll

Devi copiarla in qualche cartella raggiungibile dal path.

Qwertid
20-05-2009, 12:57
Quel modulo richiede un'altra DLL per funzionare: boost_python-vc71-mt-1_31.dll

Devi copiarla in qualche cartella raggiungibile dal path.

Ma io non ho questa dll... E nemmeno su internet la trovo... :cry:

Da qualche ricerchina online ho capito che fa parte di confBD (possibile?)

P.S: E naturalmente grazie per la risposta ;)

Qwertid
20-05-2009, 13:09
Avevi perfettamente ragione... Avevo questa dll in un'altra cartella e non lo sapevo... L'ho copiata nel workspace assieme a vari altri file .pyd che già c'erano e adesso pare fungere :)

Grazie!