2009-12-15 2 views
30

Sto tentando di installare libxml2 in modo da poter impostare i collegamenti Python e infine usare lxml.Installa libxml2 e associazioni python associate - Windows

Tuttavia, non riesco a lavorare qui sulla terra, dovrei scaricare i file. Non sono stato in grado di google con successo.

Ho bisogno di Cygwin/MinGW per il successo dell'installazione?

Al momento ho i file da libxml2.tar.gz e libxslt.tar.gz nelle rispettive directory all'interno della mia cartella Python. Quindi i file che erano nel file in under sono in Python26 \ include \ libxml2 \ libxml ... e così via.

tuttavia quando ho eseguito un lxml easy_install ricevo il seguente output:

Searching for lxml 
Reading http://pypi.python.org/simple/lxml/ 
Reading http://codespeak.net/lxml 
Best match: lxml 2.2.4 
Downloading http://codespeak.net/lxml/lxml-2.2.4.tgz 
Processing lxml-2.2.4.tgz 
Running lxml-2.2.4\setup.py -q bdist_egg --dist-dir c:\users\rocco\appdata\local 
\temp\easy_install-1xwbhy\lxml-2.2.4\egg-dist-tmp-9zwhe4 
Building lxml version 2.2.4. 
NOTE: Trying to build without Cython, pre-generated 'src/lxml/lxml.etree.c' need 
s to be available. 
ERROR: 'xslt-config' is not recognized as an internal or external command, 
operable program or batch file. 

** make sure the development packages of libxml2 and libxslt are installed ** 

Using build configuration of libxslt 
warning: no files found matching 'lxml.etree.c' under directory 'src\lxml' 
warning: no files found matching 'lxml.objectify.c' under directory 'src\lxml' 
warning: no files found matching 'lxml.etree.h' under directory 'src\lxml' 
warning: no files found matching 'lxml.etree_api.h' under directory 'src\lxml' 
warning: no files found matching 'etree_defs.h' under directory 'src\lxml' 
warning: no files found matching 'pubkey.asc' under directory 'doc' 
warning: no files found matching 'tagpython*.png' under directory 'doc' 
error: Setup script exited with error: Unable to find vcvarsall.bat 

Qualsiasi tipo di aiuto sarebbe molto utile, come ho cercato di ottenere questo andare per più di una settimana :(

Grazie

+0

Ho lo stesso problema, cercando di installare lxml 2.2.6 (ho anche provato 2.2.4 e 2.2.5). Irritato, ho dovuto ricorrere all'uso della libreria precostruita per 2.2.2 come suggerito da S.Mark in basso. Sarebbe bello se qualcuno potesse compilare la versione 2.2.6 per Python 2.6 (c'è una versione 2.4 e 2.5, dopo tutto):/ – ropable

+1

Rispondi a questa domanda: http: // stackoverflow.it/questions/3047542/# 5122521 –

risposta

28

Se non si dispone di motivi particolari per compilare dai sorgenti, è possibile utilizzare prebuilt binaries per lxml

+0

Grazie - mi hai salvato un sacco di seccature! –

+11

Perchè quando provo a fare un 'pip install lxml' o un' easy_install lxml' tenta di costruire dal sorgente? Posso fare pip scaricare i binari pre-costruiti? –

+3

@Mridang 'easy_install URL_TO_EGG' per installare i binari precompilati. Ottieni l'url corretto sulla pagina pypi o su un altro sito: http://pypi.python.org/pypi/lxml/2.2.2 –

3

Se si sta utilizzando Python 2.5.x, basta usare "lxml easy_install == 2.2.2" per installare

33

gli eseguibili per Windows dell'ultima versione di lxml (oltre a una vasta gamma di altri pacchetti Python) sono disponibili su http://www.lfd.uci.edu/~gohlke/pythonlibs/

+0

Wow ... questo è fantastico! Grazie – detj

+6

+1: binary per Python 2.7 è disponibile su questo sito ma non su pypi – jdigital

+2

dice 32 e 64. Così ho scaricato un 64, quindi dice: lxml-3.6.4-cp27-cp27m-win_amd64.whl non è una ruota supportata su questa piattaforma. Quindi ho installato il 32. e funziona! – Tiina

3

Realizzare che questo è un vecchio argomento ma ha riscontrato problemi durante l'installazione su Windows.

Ho Python versione 3.4.4.

Quando si tenta di installare i file whl assicurarsi di utilizzare la versione corretta per la propria versione di python.

quindi in questo caso avevo bisogno di usare

lxml‑3.4.4‑cp34‑none‑win_amd64.whl 

e non l'ultimo che era

lxml-3.4.4-CP35-nessuno-win_amd64.whl

cp34 indica il pitone versione per cui è stata costruita.

Trappola per nuovi giocatori ...!