Bei der Installation von Python wurde in $ PATH kein akzeptabler C-Compiler gefunden


240

Ich versuche, eine neue Python-Umgebung auf meinem Shared Hosting zu installieren. Ich folge den Schritten in diesem Beitrag :

mkdir ~/src
wget http://www.python.org/ftp/python/2.7.1/Python-2.7.1.tgz
tar -zxvf Python-2.7.1.tar.gz
cd Python-2.7.1
mkdir ~/.localpython
./configure --prefix=/home/<user>/.localpython
make
make install

Nachdem ich zum Befehl "./configure --prefix = / home //. Localpython" gekommen bin, erhalte ich die folgende Ausgabe:

checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux3
checking EXTRAPLATDIR... 
checking machine type as reported by uname -m... x86_64
checking for --without-gcc... no
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/home3/mikos89/Python-2.7.1':
configure: error: no acceptable C compiler found in $PATH
See `config.log' for more details.

Wie kann dieses Problem gelöst werden? Ich habe 3 Stunden lang versucht, eine Lösung zu finden, stecke aber immer noch an einem Ort fest.

AKTUALISIEREN

Hostgator erlaubt gcc nicht für ihre freigegebenen Konten: http://support.hostgator.com/articles/pre-sales-questions/compatible-technologies


genau das gleiche Problem
Blamb

Sie sollten versuchen, vorgefertigte Binärdateien für Ihr System zu finden. Dies ist der einfachste Weg, wenn Sie keinen Root-Zugriff haben.
C. Yduqoli

Antworten:


444

Der gcc-Compiler befindet sich nicht in Ihrem $PATH. Dies bedeutet, dass entweder gcc nicht installiert ist oder nicht in Ihrer Variablen $ PATH enthalten ist.

Um gcc zu installieren, verwenden Sie Folgendes: (als root ausführen)

  • Redhat Basis:

    yum groupinstall "Development Tools"
  • Debian-Basis:

    apt-get install build-essential

11
Ich mag die Methoden zur Installation von Build-Essential , die gcc, g ++, make usw. enthält
Spectral

2
Gibt es eine Alternative für Zypper?
Almino Melo

1
Dies ist Shared Hosting. Wie ist dies überhaupt eine akzeptierte Lösung? Wir brauchen Python, in einigen Fällen für Knoten, der auch als Benutzerebene verwendet wird, kein Root. Dies ist ein Deal Breaker für all das und braucht Root. Dies soll eine Nicht-Root-Prozedur sein IMO
Blamb

1
Eigentlich ist es yum group "Entwicklung T ools" in CentOS 7
Franc Gualazzi

3
Wie würden Sie feststellen, ob es installiert ist, aber nicht in Ihrer $ PATH-Variablen?
JMess

81

du musst rennen

yum install gcc

3
Arbeitete an CentOS 7. Danke
Faliorn

Arbeitete an Debian 4.9. Vielen Dank
Jad Chahine

Arbeitete an CentOS 8. Danke
twasbrillig

Ich erhalte die Fehlermeldung "Fehler beim Zugriff auf die Datei für die Konfigurationsdatei: ///etc/yum.conf". Ich habe Bluehost Shared Hosting.
Paul Chris Jones

Hey @PaulChrisJones, ich bin auf dasselbe Problem gestoßen, als ich versucht habe, gcc mit ssh in meinem Blueshot-Hosting zu installieren. Ich bin darauf gestoßen, weil meine Konfigurationsdatei nicht ausgeführt werden konnte. Wenn Sie eine Lösung gefunden haben, lassen Sie es mich bitte wissen. Es wäre eine große Hilfe!
Honey Khandelwal

66

für Ubuntu / Debian:

# sudo apt-get install build-essential

Für RHEL / CentOS

#rpm -qa | grep gcc
# yum install gcc glibc glibc-common gd gd-devel -y

oder

 # yum groupinstall "Development tools" -y

Weitere Details finden Sie unter dem Link


57

Sie müssen laufen

sudo apt-get install build-essential

Nehmen wir zunächst an, Sie befinden sich auf einem Debain / Ubuntu-System


1
Ich habe diese Antwort erhalten, nachdem ich Ihren Code eingegeben habe: sudo: mkdir / var / db / sudo nicht möglich: Keine solche Datei oder kein solches Verzeichnis Wir vertrauen darauf, dass Sie die übliche Vorlesung vom lokalen Systemadministrator erhalten haben. Es läuft normalerweise auf diese drei Dinge hinaus: # 1) Respektieren Sie die Privatsphäre anderer. # 2) Denken Sie nach, bevor Sie tippen. # 3) Mit großer Kraft geht große Verantwortung einher. [sudo] Passwort für <Benutzername>: <Benutzername> befindet sich nicht in der sudoers-Datei. Dieser Vorfall wird gemeldet.
mik.ro

1
Welche Distribution benutzt du?
Vahid Abdi

@ mik.ro welches Betriebssystem / welche Distribution läufst du? Sind Sie zufällig als root angemeldet?
Tom Swifty

Ich benutze Hostgator, es ist auf CentOS x86.
mik.ro

1
Ok, ich habe die Hostgator-Website überprüft und die Lösung ist sehr einfach und traurig: Sie erlauben kein GCC auf ihrem Shared Server- Link. Wenn jemand eine Idee hat, wie ich eine andere Python-Distribution auf seinem Shared Hosting installieren kann, werde ich es begrüßen .
mik.ro

12

Sie müssten es als Nicht-Root installieren, da es gemeinsam genutzt wird. Hier ist ein Tut, der zeigt, wie dieser Schritt. http://luiarthur.github.io/gccinstall

cd ~/src
wget http://www.netgull.com/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.gz

oder eine äquivalente gcc-Quelle

tar -xvf gcc-5.2.0.tar.gz
cd gcc-5.2.0
./contrib/download_prerequisites
cd ..
mkdir objdir
cd objdir
$PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,go
make
make install

Fügen Sie dann zu .bashrc oder einem gleichwertigen Element hinzu

export PATH=~/gcc-5.2.0/bin:$PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=~/gcc-5.2.0/lib64:$LD_LIBRARY_PATH

10
Wenn die Ausführung $PWD/../gcc-5.2.0/configure --prefix=$HOME/gcc-5.2.0 --enable-languages=c,c++,fortran,goimmer noch den gleichen Fehler ergibt, konfigurieren Sie: Fehler: Kein akzeptabler C-Compiler in $ PATH gefunden
Tony Chou

Ich habe "configure: error: kein akzeptabler C-Compiler in $ PATH gefunden" bei der Ausführung von $ PWD ... Gibt es eine bekannte Lösung ???
Terry

12

Wenn Sie Alphine mit Docker verwenden, gehen Sie folgendermaßen vor:

apk --update add gcc make g++ zlib-dev

2
apk add --no-cache git autoconf automake gawk build-base
Srghma

9

Lassen Sie jemanden mit Zugriff auf das Root-Konto auf diesem Server ausführen sudo apt-get install build-essential . Wenn Sie nicht wissen, wer Root-Zugriff hat, wenden Sie sich an das Support-Team für Ihr Shared Hosting und fragen Sie es.

Bearbeiten: Wenn Sie keinen Zugriff auf root haben, werden Sie es nie zum Laufen bringen. Ich fürchte, Sie müssen den Hosting-Anbieter wechseln.



7

sudo apt install build-essential ist der Befehl

Wenn Sie jedoch den Fehler " Das Paket kann gefunden werden " erhalten , führen Sie "Ausführen" aus

  • sudo apt update zuerst
  • dann sudo apt install build-essential

Das hat bei mir funktioniert.


Arbeitete für mich unter Ubuntu 18.04
Liz

4

Führen Sie unter Arch Linux Folgendes aus:

sudo pacman -S base-devel

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.