web-dev-qa-db-fra.com

Aucune erreur CMAKE_C_COMPILER n'a été trouvée avec Xcode et GLFW

J'essaie de suivre ce tutoriel pour démarrer avec OpenGL: http://www.learnopengl.com/#!Getting-started/Creating-a-window et nécessite le téléchargement de glfw et CMake. J'ai défini le dossier glfw téléchargé en tant que dossier de code source et j'ai créé à l'intérieur de ce dossier un autre dossier appelé "build" que j'ai ensuite défini en tant que build pour les fichiers binaires, comme le demande le tutoriel . Je clique sur sur "Configure" et je sélectionne XCode en tant que générateur, car je suis sur un Mac . Le problème est que lorsque j'essaie de configurer le projet, CMake me donne cette erreur: 

L'identification du compilateur C est inconnue Erreur CMake dans CMakeLists.txt: 3 (projet): Aucun CMAKE_C_COMPILER n'a pu être trouvé.

Une configuration incomplète, des erreurs se sont produites! Voir aussi "/ Utilisateurs/standard/Bureau/glfw-3.2.1/build/CMakeFiles/CMakeOutput.log".

Voir aussi "/ Utilisateurs/standard/Bureau/glfw-3.2.1/build/CMakeFiles/CMakeError.log".

J'ai déjà lu cette question mais, autant que je sache, elle ne contient pas ce dont j'ai besoin: CMake Error at CMakeLists.txt: 30 (projet): Aucun CMAKE_C_COMPILER n'a pu être trouvé

Je vous remercie.

8
Jules

Si vous avez installé Xcode, essayez ceci:

Sudo xcode-select --reset
36
hstdt

Avez-vous installé les outils Xcode et Xcode Commandline?

xcode-select --install

Si vous avez installé Xcode Commandline Tools, vous ne devriez plus recevoir l'erreur xcrun is missing.

Comment avez-vous installé Cmake? Une fois que vous avez vérifié que Xcode Commandline Tools est installé, veuillez supprimer complètement Cmake de votre système et le réinstaller. Vous avez une configuration foutue. Il existe des moyens de déboguer et de résoudre le problème sans installation propre, mais comme vous n’êtes pas novice, ce sera le moyen le plus simple et le moins frustrant.

Si cela ne fonctionne pas si vous avez installé Xcode Commandline Tools, hstdt a suggéré d'essayer ceci:

Sudo xcode-select --reset
11
Cinder Biscuits

Cela m'est arrivé avec Xcode10/Cmake 3.12 après l'installation de Homebrew. Courir Sudo xcode-select --reset l'a corrigé pour moi.

6
op414

Sur une nouvelle installation de Xcode, les outils en ligne de commande se plaignent d’accepter le CLUF, ce que les outils de construction n’aiment pas. Ce que vous pouvez faire avec:

Sudo xcodebuild -license
5
zeroeth

Cette erreur signifie que CMake ne peut pas trouver votre compilateur C/C++ standard, vous aurez donc besoin d'exporter vous-même les variables d'environnement. vous pouvez trouver le chemin de votre compilateur C/C++ avec:

xcrun -find c++
xcrun -find cc

Ensuite, lorsque vous avez les chemins, créez deux variables à l'intérieur de l'interface graphique. Si vous le lancez depuis le clavier, ce serait quelque chose comme

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

La détection du compilateur semble être interrompue avec Xcode 10 et les versions antérieures de CMake. Je sais que cela s'est cassé pour moi avec CMake 2.2 et que la mise à niveau vers la dernière version (2.13) l'a résolu pour moi. Cela fonctionnait bien avec Xcode 9 et cela s’est rompu avec la mise à niveau. J'ai essayé les autres solutions (toutes bonnes en fonction de votre situation) mais la mise à niveau de CMake a résolu le problème.

0
Nicholas Frechette

Je reçois exactement cette erreur si ccache est activé sur ma machine. La désactivation de ccache a résolu le problème pour moi. 

Pour vérifier si ccache est activé, imprimez les variables système CC ou CXX:

echo $CC
echo $CXX

Cela affiche quelque chose comme ce qui suit: ccache clang -Qunused-arguments -fcolor-diagnostics. (CC ou CXX sont généralement remplacés par le fichier .bashrc ou .zshrc.)

Pour désactiver ccache, utilisez ce qui suit:

CC=clang
CXX=clang++

Reconstruisez ensuite le projet cmake:

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

Apparemment, il est possible d'utiliser le générateur Xcode de CMake également en combinaison avec ccache, comme cela est décrit ici . Mais je n'ai jamais essayé moi-même.

0
normanius