webentwicklung-frage-antwort-db.com.de

CMake-Fehler Mit Xcode und GLFW konnte kein CMAKE_C_COMPILER gefunden werden

Ich versuche, diesem Tutorial zu folgen, um mit OpenGL zu beginnen: http://www.learnopengl.com/#!Getting-started/Creating-a-window und erfordert das Herunterladen von glfw und CMake. Ich habe den heruntergeladenen glfw-Ordner als Quellcode-Ordner festgelegt und in diesem Ordner einen weiteren Ordner namens "build" erstellt, den ich dann als Build-Ordner für die Binärdateien setze, wie das Tutorial fragt. Ich klicke darauf auf "Configure" und ich wähle XCode als Generator, da ich auf einem Mac bin. Das Problem ist, dass ich, wenn ich versuche, das Projekt zu konfigurieren, CMake diesen Fehler gibt: 

Die C-Compiler-Identifikation ist unbekannt CMake-Fehler in CMakeLists.txt: 3 (Projekt): Es konnte kein CMAKE_C_COMPILER gefunden werden.

Konfiguration unvollständig, Fehler aufgetreten! Siehe auch "/ Benutzer/Standard/Desktop/glfw-3.2.1/build/CMakeFiles/CMakeOutput.log".

Siehe auch "/ Users/standard/Desktop/glfw-3.2.1/build/CMakeFiles/CMakeError.log".

Ich habe diese Frage bereits gelesen, aber soweit ich das verstehen kann, hat sie nicht das, was ich brauche: CMake-Fehler bei CMakeLists.txt: 30 (Projekt): Es konnte kein CMAKE_C_COMPILER gefunden werden

Vielen Dank.

8
Jules

Wenn Sie Xcode installiert haben, versuchen Sie Folgendes:

Sudo xcode-select --reset
36
hstdt

Haben Sie Xcode und Xcode Commandline Tools installiert?

xcode-select --install

Wenn Sie Xcode Commandline Tools installiert haben, sollte der Fehler xcrun nicht mehr angezeigt werden.

Wie haben Sie Cmake installiert? Nachdem Sie sichergestellt haben, dass Xcode Commandline Tools installiert ist, entfernen Sie Cmake vollständig von Ihrem System und installieren Sie es erneut. Sie haben eine fehlerhafte Konfiguration. Es gibt verschiedene Möglichkeiten, das Debugging durchzuführen und das Problem zu beheben, ohne dass eine Neuinstallation erforderlich ist. Da Sie jedoch noch nicht mit dem Problem vertraut sind, ist dies der einfachste und frustrierendste Weg.

Wenn dies fehlschlägt, wenn Sie Xcode Commandline Tools installiert haben, schlug hstdt Folgendes vor:

Sudo xcode-select --reset
11
Cinder Biscuits

Dies ist mir mit Xcode10/Cmake 3.12 nach der Installation von Homebrew passiert. Das Ausführen von Sudo xcode-select --reset hat es für mich behoben.

6
op414

Bei einer neuen Xcode-Installation beschweren sich die Befehlszeilen-Tools, dass sie der EULA zustimmen, die Build-Tools nicht mögen. Was können Sie mit:

Sudo xcodebuild -license
5
zeroeth

Dieser Fehler bedeutet, dass CMake Ihren Standard-C/C++ - Compiler nicht finden kann. Sie müssen die Umgebungsvariablen selbst exportieren. Sie können den Pfad Ihres C/C++ - Compilers finden mit:

xcrun -find c++
xcrun -find cc

Wenn Sie danach die Pfade haben, erstellen Sie zwei Variablen innerhalb der GUI. Wenn Sie es von der Cline aus ausführen, wäre es ungefähr so

cmake -D CMAKE_C_COMPILER="/path/to/your/c/compiler/executable" -D CMAKE_CXX_COMPILER "/path/to/your/cpp/compiler/executable" .....
3

Die Compiler-Erkennung scheint mit Xcode 10 und älteren Versionen von CMake fehlerhaft zu sein. Ich weiß, dass es für mich mit CMake 2.2 kaputt ging und ein Upgrade auf die neueste Version (2.13) für mich gelöst hat. Es funktionierte gut mit Xcode 9 und es brach beim Upgrade. Ich habe die anderen Lösungen ausprobiert (alle gut je nach Situation), aber das Upgrade von CMake hat das Problem behoben.

0

Ich erhalte genau diesen Fehler, wenn ccache auf meinem Rechner aktiviert ist. Durch das Deaktivieren des Caches wurde das Problem für mich behoben. 

Drucken Sie die Systemvariablen CC oder CXX, um zu prüfen, ob der Ccache aktiviert ist:

echo $CC
echo $CXX

Dies gibt ungefähr Folgendes aus: ccache clang -Qunused-arguments -fcolor-diagnostics. (CC oder CXX werden normalerweise von der .bashrc- oder .zshrc-Datei überschrieben.)

Um den Cache zu deaktivieren, verwenden Sie Folgendes:

CC=clang
CXX=clang++

Dann bauen Sie das cmake-Projekt neu auf:

cmake -G Xcode <path/to/CMakeLists.txt>

Offensichtlich ist es möglich, den Xcode-Generator von CMake auch in Kombination mit ccache zu verwenden, wie dies in hier beschrieben ist. Aber ich habe es selbst nie ausprobiert.

0
normanius