2016-05-20 25 views
6

Aggiornamento 2:messaggio di errore Python libxml "versione della libreria non compatibile" e etree.so

il problema principale si è rivelato essere uno diverso da quello che avevo pensato che fosse, e ha chiesto aiuto qui. Ho spostato la nuova domanda per un nuovo post:

Install custom python package in virtualenv


Aggiornamento: ok, così ho fatto un casino la mia non-virtualenv per caso. La non-virtualenv (bash normale) ho potuto facilmente risolvere rimuovendo il lxml installato manualmente (tramite PIP) e l'esecuzione di

conda install lxml --force 

Ma per qualche ragione, che non funziona nel virtualenv. Lì, in esecuzione

conda install lxml --force 

opere senza messaggio di errore, ma quando corro pitone e dire semplicemente

>>> import lxml 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
ImportError: No module named lxml 

Qualche suggerimento ??


vecchio messaggio:

Sto cercando di utilizzare virtualenv per la mia applicazione pallone pitone. Il codice Python funziona perfettamente senza virtualenv.

ho installato i pacchetti di cui ho bisogno nella virtualenv, ma dopo l'installazione lxml via

pip install lxml 
Installing collected packages: lxml 
Successfully installed lxml-3.6.0 

ricevo il seguente messaggio di errore quando si esegue il mio codice:

File "/Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/docx-0.2.4-py2.7.egg/docx.py", line 17, in <module> 
from lxml import etree 

ImportError: dlopen(/Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/lxml/etree.so, 2): Library not loaded: libxml2.2.dylib 
    Referenced from: /Users/XXX/xxx/flask-aws/lib/python2.7/site-packages/lxml/etree.so 

    Reason: Incompatible library version: etree.so requires version 12.0.0 or later, but libxml2.2.dylib provides version 10.0.0 

ho visto altre persone segnalano problemi simili a StackOverflow, e un tizio ha osservato che il problema potrebbe riguardare il virtualenv, ma non c'era alcuna soluzione.

Ancora una volta: il codice Python funziona perfettamente senza virtualenv! Ma dentro virtualenv, non riesco a farlo funzionare.

Sto usando Anaconda Python 2.7 su un Mac.

Apprezzerei qualsiasi aiuto ragazzi!

+0

http://stackoverflow.com/a/25435087/3103677 Hai guardato questo? – sebenalern

+0

Grazie per il suggerimento, come ho scritto sopra, non ha funzionato, anche se nel virtualenv. – Holger

risposta

17

ho avuto lo stesso errore e d'imbatterci in questo link, dopo aver cercato per l'errore di libreria incompatibile "libxml2.2.dylib fornisce la versione 10.0.0"

Installazione libxml2 che ha funzionato per me:

brew install libxml2 
brew link --force libxml2 
+1

Ho anche dovuto forzare l'installazione: 'brew install --force libxml2' – Raj