terminal -bash: Befehl nicht gefunden

Ich versuche, ein C ++ - Programm auf dem Mac-Terminal mit gcc und dann dem Pfad der Quelldateien zu kompilieren. Ich habe einige kurzfristige Lösungen im Internet gefunden, aber ich möchte, dass es immer funktioniert. Außerdem kenne ich mich mit dem Terminal kaum aus, daher ist die Lösung ganz einfach erklärt.

echo $PATHgibt:

/Library/Frameworks/Python.framework/Versions/2.7/bin:’/usr/local/bin:??

/bin/cat ~/.profile gibt keine solche Datei oder Verzeichnis aus,

/bin/cat ~/.bash_profile gibt Folgendes aus:

export PATH=’/usr/local/bin:?? 
# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
 PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

Wenn ich das Programm mit gcc kompiliere bekomme ich "-bash: gcc: command not found"

Wenn ich jedoch die Befehle ausführe

export PATH="/usr/bin:/bin:/usr/sbin:/sbin"
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

…das Terminal funktioniert. Ich würde gerne wissen, wie es funktioniert, ohne diese Befehle auszuführen.

Auf meinem Computer mit OS X 10.10.5 finde ich gccunter /usr/bin/gcc. Ich glaube nicht, dass Sie ausführen können, gccbis Sie Xcode installieren. Dein Beitrag stellt eigentlich keine Frage. Was ist also genau das Problem, das Sie lösen möchten?
@BenBeazley Bitte bestätigen Sie die von patrix♦ vorgenommenen Änderungen.
Was genau ist das Problem, mit dem Sie hier konfrontiert sind? Welchen Befehl versuchen Sie auszuführen bash, welche Fehlermeldung erhalten Sie?
Ihre erste PATH-Variable bringt Ihren PATH durcheinander. Angenommen, Sie benötigen /usr/local/bin, haben Sie einfach PATH="/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" export PATH" in Ihrer .bash. Profil und gehen Sie von dort aus.
Die PATH-Variable wird mit exportiert export PATH, aber das hilft Ihnen nicht, wenn die PATH-Definition von Anfang an falsch ist. Es hilft Ihnen auch nicht, wenn Ihr Problem nicht mit PATH zusammenhängt. Also helfen Sie uns bitte, Ihnen zu helfen, das Problem zu beschreiben, mit dem Sie beim Kompilieren von C++-Code konfrontiert sind, welche Dinge Sie bereits versucht haben und wo Sie jetzt feststecken.
Ben, wenn Sie hier kommentieren möchten, müssen Sie dasselbe Konto verwenden, mit dem Sie die Frage gestellt haben, oder den Kontaktlink unten auf der Seite verwenden, um die Zusammenführung des Kontos anzufordern.

Antworten (1)

Ändern Sie die Datei .bash_profile mit nano oder einem anderen geeigneten Editor:

Ersetzen:

export PATH=’/usr/local/bin:?? 
# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH 

von:

# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
export PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin:$PATH

Erläuterung:

Die erste Zeile Ihres aktuellen .bash_profile

export PATH=’/usr/local/bin:?? 

ändert den Standardwert von $PATH, der durch /etc/paths von gegeben wird

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 

to ’/usr/local/bin:??- was kein gültiger Pfad ist.

Die vierte und fünfte Zeile Ihres aktuellen .bash_profile ändert $PATH in

/Library/Frameworks/Python.framework/Versions/2.7/bin:’/usr/local/bin:??

Da ’/usr/local/bin:?es keinen gültigen Pfad gibt, ist der letztendlich wirksame PATH

/Library/Frameworks/Python.framework/Versions/2.7/bin

was Ihren Standard PATH vollständig durchbricht. Sie können weiterhin alle ausführbaren Dateien in den oben genannten Verzeichnissen ausführen, aber Sie können die übergeordneten Verzeichnisse nicht weglassen (z. B. um nano auszuführen, müssen Sie /usr/bin/nanoanstelle von eingeben nano).