Ich benutze OS X El Capitan. Ich habe Xcode 7 aus dem AppStore und Macports von einer offiziellen Website installiert.
Wenn ich versuche, etwas mit macports zu installieren: sudo port install nodejs4
, erhalte ich die folgende Warnung: Warning: The Xcode Command Line Tools don't appear to be installed; most ports will likely fail to build.
. Aber der Compiler ( cc
) funktioniert, make
funktioniert, und ich habe tatsächlich einige Macports-Pakete ohne Probleme installiert.
Wenn ich jetzt ausführe xcode-select --install
, erhalte ich ein Dialogfeld, um die Entwicklertools zu installieren. Aber ich denke, dass Xcode bereits all diese Tools hat:
$ xcode-select -p
/Applications/Xcode.app/Contents/Developer
Die Frage ist also: Ist es ein Fehler in Macports oder gibt es einige Tools, die nicht in Xcode 7 enthalten sind und separat mit installiert werden müssen xcode-select --install
? Ich möchte keinen unnötigen Kram einbauen.
Also habe ich Macports-Quellen inspiziert und es stellt sich heraus, dass diese Warnung angezeigt wird, wenn Verzeichnisse /usr/include
oder ausführbare Dateien /usr/bin/make
fehlen. Während ich gearbeitet habe /usr/bin/make
, /usr/include
fehlte tatsächlich das Verzeichnis. Die Installation von Befehlszeilentools mit xcode-select --install
behoben.
Sie müssen die Entwicklertools installieren, um den C-Compiler und andere Build-Tools (z. B. Linker, Make) über die Befehlszeile auszuführen und Unterstützungsdateien, z. B. Include und Bibliotheken, bereitzustellen
Die Befehlszeilentools befinden sich an Orten wie /usr/bin und daher kann die Installation über den AppStore die Tools nicht an der richtigen Stelle ablegen. Dazu muss ein separater Installationsschritt durchgeführt werden.
/usr/bin/clang
und es funktioniert, ich kann C-Programme kompilieren. Dasselbe gilt für /usr/bin/make
, /usr/bin/xcrun
usw.Wie ein Kommentar zur ursprünglichen Frage sagte, müssen Sie zu den Xcode-Einstellungen und dann zur letzten Registerkarte, Standorte, gehen. Die Optionen für das zu verwendende Befehlszeilen-Toolset sind vorhanden.
ruddfawcett
vbezhenar
vbezhenar