2012-07-24 16 views
14

Ich versuche, Pycrypto2.6 auf Ubuntu 10.04 (Lucid Lynx) mit Python 2.7.3 zu installieren.pycrypto auf Ubuntu geben Compilerfehler

Ich bin Begegnung mit den folgenden Fehler:

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 

I Software Center geprüft, und ich habe GCC auf meinem System installiert, aber die "welche gcc" Befehl zurückkehrt keinen Weg.

Ich habe es durch den symbolischen Link zu erstellen:

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

Hallo pratibha, bitte fügen Sie Ihrem Fragetitel nicht "[gelöst]" hinzu, so funktioniert diese Seite nicht. Schreibe deine Antwort als Antwort (du wirst das in einer Weile tun können). Wenn Sie die Antwort bereits beim Posten kennen, gibt es dafür im Frageneditor eine Schaltfläche. – Mat

+0

Sie sollten diesen Symlink nicht selbst erstellen müssen. Die Installation des 'gcc'-Pakets (das, wie ich mich erinnere, ist vorinstalliert) sollte den Symlink für Sie erstellt haben. –

+0

Ich habe den gcc-Teil hinter mich gebracht, aber auf 'checking, ob wir Cross-Compiling sind, habe ich' configure: error: kann nicht C kompilierte Programme laufen. Wenn Sie kompilieren wollten, verwenden Sie '--host'. Weitere Informationen finden Sie unter "config.log". Config.log wurde nie gefunden. Wie auch immer, die [TMPDIR Antwort] (https://stackoverflow.com/a/29298978/673991) hat funktioniert. Yay Sicherheit durch Dunkelheit. –

Antwort

13

Ich hatte ein ähnliches Problem, aber in meinem Fall stellt sich heraus, dass ich nicht gcc überhaupt installiert hatte.

So ein einfacher sudo apt-get install gcc hat den Trick gemacht. Wenn Sie es installiert haben, aber which gcc keinen Pfad zurückgibt, gehen Sie zu /usr/bin/ und suchen Sie nach gcc. Dann erstellen Sie einen symbolischen Link, etwa so:

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

wo Sie <version-number> mit der entsprechenden Versionsnummer ersetzt, natürlich.

+0

'$ was gcc' '/usr/bin/gcc' Und immer noch nicht funktioniert. – zgoda

+0

> Also ein einfaches sudo apt-get install gcc hat den Trick gemacht. Das funktionierte für mich – jward01

5

Ich hatte das gleiche Problem, und den obigen Schritt der Installation von GCC zu versuchen, hat nicht geholfen.

Sobald ich das Paket Python-dev installiert hatte, kompiliert alles perfekt.

sudo apt-get install python-dev

+0

das arbeitete auf debian. Danke – asselinpaul

+0

Das funktioniert für mich, stellen Sie sicher, gcc UND Python-dev sind installiert – JVercout

17

Ich lief in eine ähnliche Fehlermeldung, wenn PyCrypto auf einem gemeinsamen Host (Webfaction) installieren. Die Lösung war, das temporäre Verzeichnis während der Installation zu ändern:

TMPDIR=~/tmp pip install pycrypto 
+2

Danke, diese Antwort half mir mit einer Box Ich versuchte zu installieren Paramiko, die noexec für/tmp hatte – joshbaptiste

+2

Leider hat dies nicht geholfen, immer noch die oben genannten Error. – zgoda

+0

Dies ist eine falsche Lösung für das ursprüngliche Problem. Hilft in einer anderen Situation. – loop