2012-05-19 12 views
6

Ho provato varie strade ma senza fortuna. Sto usando un MBP con 10.7.4. Non ricordo l'ultima volta che ho avuto così tanti problemi nell'installare qualsiasi cosa con Python sul mio Mac. Per favore aiutami a usare lxml sul mio computer locale e non fare affidamento su commit SVN, aggiornamenti per l'esecuzione remota sul computer Linux.Come installare lxml su Mac OS X 10.7.4? Ho esaurito tutte le opzioni

$ sudo STATIC_DEPS=true /usr/bin/easy_install-2.7 lxml 
Password: 
Searching for lxml 
Reading http://pypi.python.org/simple/lxml/ 
Reading http://codespeak.net/lxml 
Best match: lxml 2.3.4 
Downloading http://lxml.de/files/lxml-2.3.4.tgz 
Processing lxml-2.3.4.tgz 
Running lxml-2.3.4/setup.py -q bdist_egg --dist-dir /tmp/easy_install-mbyEtk/lxml-2.3.4/egg-dist-tmp-O_t_3P 
Building lxml version 2.3.4. 
Latest version of libiconv is 1.14 
Downloading libiconv into libs/libiconv-1.14.tar.gz 
error: [Errno 60] Operation timed out 

provato quanto segue senza fortuna

$ python setup.py build

$ STATIC_DEPS=true sudo easy_install --allow-hosts=lxml.de,*.python.org lxml 
$ sudo pip install lxml 

llvm-gcc-4.2 -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch x86_64 -pipe -I/usr/include/libxml2 -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.7-intel-2.7/src/lxml/lxml.etree.o -w -flat_namespace 

unable to execute llvm-gcc-4.2: No such file or directory 

error: command 'llvm-gcc-4.2' failed with exit status 1 
+0

cosa dice il tuo '~/.pip/pip.log'? – mata

+3

Manca il compilatore C. – larsks

+0

@mata: -bash: /Users/ThinkCode/.pip/pip.log: nessun file o directory – ThinkCode

risposta

7

ho installato MacPorts e poi:

$ sudo port install python27 py27-lxml 

E questo mi ha dato un'installazione funzionamento lxml.

Per quanto riguarda i messaggi di errore, sembra che manchi il comando del compilatore che pip utilizza per creare lxml (llvm-gcc-4.2). Hai installato gli strumenti di sviluppo OS X? Dovresti trovare quel file in /usr/bin/llvm-gcc-4.2; se non è lì, probabilmente è necessario scaricare e installare il pacchetto di sviluppo.

È possibile installare gli strumenti di sviluppo XCode tramite l'App Store. Se leggi i commenti nell'app store, tieni presente che per rendere disponibili gli strumenti della riga di comando è necessario installarli separatamente. In XCode, vai su Preferenze-> Download e scarica il pacchetto "Strumenti della riga di comando".

+0

Posso installarlo senza MacPorts? – ThinkCode

+1

Certo, è possibile.Ma in generale preferisco trascorrere il mio tempo * usando * il software, quindi sono felice di sfruttare le cose che rendono più facile * installare * il software. – larsks

+0

Aspetterò qualche altra risposta e alla fine ricorro a MacPorts se non dovessi andare da nessuna parte con lxml install. Grazie mille. Upvoted. – ThinkCode

1

che dovevo fare: "sudo port disinstallazione py-lxml", "sudo port disinstallazione py24-lxml", e "sudo port install py27-lxml" e poi ho disinstallato lxml con pip e reinstallato con pip e ha funzionato!

+1

Grazie! Il tuo consiglio di disinstallazione mi ha aiutato a risolvere la mia domanda simile su http://stackoverflow.com/questions/22752332/cannot-install-lxml-3-3-3-on-osx-10-9-with-buildout –

3

Per gli utenti futuri che stanno visitando questa pagina, ecco una guida passo-passo per l'installazione di lxml su Mac OSX.

  1. Passare a Xcode e andare su Preferenze, quindi andare alla scheda Download e selezionare "Strumenti da riga di comando". Scarica gli strumenti della riga di comando

  2. Passare ad Applicazioni, quindi Utilità, quindi Terminale e aprire il Terminale. Nel terminale, digitare "easy_install pip". Nota: Se viene visualizzato "errore:/usr/local/bin/pip: autorizzazione negata", digitare "chmod 777/usr/local/bin /". ora prova di nuovo il punto 2.

  3. Tipo: pip install "Cython> = 0,18"

  4. dopo che è finito, tipo: pip installare lxml

  5. Aprire pitone IDLE e verificare se è possibile importare lxml, buon divertimento!

+0

Questo non è sufficiente ; provando output: /lxml/src/lxml/includes/etree_defs.h:9:10: errore fatale: file 'libxml/xmlversion.h' non trovato – Petri

+0

Nel mio caso ero semplicemente in grado di usare 'pip install lxml' in parte perché avevo già installato Xcode e una versione ragionevolmente nuova di Cython. –