2012-07-24 19 views
14

Sto cercando di installare pycrypto2.6 su Ubuntu 10.04 (Lucid Lynx) con Python 2.7.3.pycrypto su Ubuntu con errore del compilatore

sto incontrando il seguente errore:

running build 
running build_py 
running build_ext 
running build_configure 
checking for gcc... no 
checking for cc... no 
checking for cl.exe... no 
configure: error: in `/home/pratibha/Desktop/pycrypto-2.6': 
configure: error: no acceptable C compiler found in $PATH 
See `config.log' for more details 
Traceback (most recent call last): 
File "setup.py", line 456, in <module> 
core.setup(**kw) 
File "/usr/local/lib/python2.7/distutils/core.py", line 152, in setup 
dist.run_commands() 
File "/usr/local/lib/python2.7/distutils/dist.py", line 953, in run_commands 
self.run_command(cmd) 
File "/usr/local/lib/python2.7/distutils/dist.py", line 972, in run_command 
cmd_obj.run() 
File "/usr/local/lib/python2.7/distutils/command/build.py", line 127, in run 
self.run_command(cmd_name) 
File "/usr/local/lib/python2.7/distutils/cmd.py", line 326, in run_command 
self.distribution.run_command(command) 
File "/usr/local/lib/python2.7/distutils/dist.py", line 972, in run_command 
cmd_obj.run() 
File "setup.py", line 251, in run 
self.run_command(cmd_name) 
File "/usr/local/lib/python2.7/distutils/cmd.py", line 326, in run_command 
self.distribution.run_command(command) 
File "/usr/local/lib/python2.7/distutils/dist.py", line 972, in run_command 
cmd_obj.run() 
File "setup.py", line 278, in run 
raise RuntimeError("autoconf error") 
RuntimeError: autoconf error 

ho controllato Software Center, e devo GCC installato sul mio sistema, ma il "che gcc" comando non restituisce alcun percorso.

ho capito creando il collegamento simbolico:

ln -s /usr/bin/gcc-4.4 /usr/bin/gcc 
+2

Ciao Pratibha, si prega di non aggiungere "[risolto]" al tuo titolo della domanda, questo non è come funziona questo sito. Pubblica la tua risposta come risposta (sarai in grado di farlo in un istante). Se già conosci la risposta quando pubblichi, c'è un pulsante per quello nell'editor di domande. – Mat

+0

Non dovresti creare da solo quel collegamento simbolico. L'installazione del pacchetto 'gcc' (che come ricordo è preinstallato) dovrebbe aver creato il link simbolico per te. –

+0

Ho superato la parte gcc, ma su 'controllando se si esegue la compilazione incrociata' Ho ottenuto' configure: error: impossibile eseguire programmi compilati C. Se intendevi compilare la croce, usa "--host". Vedi 'config.log' per maggiori dettagli. Non ha mai trovato config.log. Ad ogni modo la [risposta di TMPDIR] (https://stackoverflow.com/a/29298978/673991) ha funzionato. Yay sicurezza per oscurità. –

risposta

13

Ho avuto un problema simile, ma nel mio caso si scopre che non avevo gcc installato a tutti.

Quindi un semplice sudo apt-get install gcc ha funzionato.

Se è installato, ma which gcc non restituisce alcun percorso, quindi passare a /usr/bin/ e cercare gcc. Quindi creare un link simbolico, in questo modo:

ln -s /usr/bin/gcc-<version-number> /usr/bin/gcc 

in cui è stato sostituito <version-number> con il numero di versione del caso, ovviamente.

+0

'$ che gcc' '/usr/bin/gcc' E ancora non funziona. – zgoda

+0

> Quindi un semplice sudo apt-get install gcc ha fatto il trucco. Questo ha funzionato per me – jward01

5

Avevo lo stesso problema e provare il passaggio precedente di installare gcc non ha aiutato.

Una volta installato il pacchetto python-dev, tutto è stato compilato perfettamente.

sudo apt-get install python-dev

+0

questo ha funzionato su debian. Grazie – asselinpaul

+0

Questo funziona per me, assicurati che gcc AND python-dev siano installati – JVercout

17

mi sono imbattuto in un messaggio di errore simile quando si installa pycrypto su un host condiviso (Webfaction). La soluzione era quella di cambiare la directory temporanea durante l'installazione:

TMPDIR=~/tmp pip install pycrypto 
+2

Grazie, questa risposta mi ha aiutato con una scatola che stavo cercando di installare pipiko paramiko che aveva noexec per/tmp – joshbaptiste

+2

Purtroppo questo non ha aiutato, ottenendo ancora il suddetto errore. – zgoda

+0

Questa è una soluzione sbagliata per il problema originale. Aiuta in un'altra situazione. – loop

Problemi correlati