J'essaie d'installer OpenCV sur mon Mac en suivant ceci link
Cependant, lorsque je tape cmake -G "Unix Makefiles" ..
sur mon terminal, cette erreur est imprimée.
- L'identification du compilateur CXX est inconnue - L'identification du compilateur C est inconnue - Vérifier le bon fonctionnement du compilateur CXX: /usr/bin/c++ - Vérifier le bon fonctionnement Compilateur CXX:/usr/bin/c ++ - Erreur CMake cassée à /opt/local/share/cmake-3.0/Modules/CMakeTestCXXCompiler.cmake:54 (Message): Le compilateur C++ "/ usr/bin/c ++ "n'est pas en mesure de compiler un programme de test simple .
Il échoue avec la sortie suivante:
Changer le répertoire:/Users/kwmaeng/Desktop/opencv/build/CMakeFiles/CMakeTmp
Exécuter la commande de construction: "/ usr/bin/make" "cmTryCompileExec653545098/fast"
make: error: impossible de trouver l'utilitaire "make", pas un outil de développement ou dans PATH
CMake ne pourra pas générer correctement ce projet. Appelez Stack (l'appel le plus récent en premier): CMakeLists.txt: 56 (projet)
- Configuration incomplète, des erreurs sont survenues! Voir aussi "/Users/kwmaeng/Desktop/opencv/build/CMakeFiles/CMakeOutput.log". Voir aussi "/Users/kwmaeng/Desktop/opencv/build/CMakeFiles/CMakeError.log".
Alors j'ai vérifié CMakeError.log, et c'est le contenu
La compilation du fichier source d'identification du compilateur CXX "CMakeCXXCompilerId.cpp" a échoué. Compilateur:/usr/bin/c ++ Drapeaux de construction: Drapeaux d’identification:
La sortie était: 72 xcodebuild: error: SDK "/ Volumes/MAC/dev/adt-bundle-mac-x86_64-20131030/sdk" ne peut pas être situé à . c ++: erreur: impossible de trouver l'utilitaire "clang ++", ni un outil de développeur ni dans PATH ... (blah blah)
Ce qui est étrange, c'est que /Volumes/MAC/dev/adt-bundle-mac-x86_64-20131030/sdk
est l'endroit où mon SDK Android a été installé. Il est maintenant supprimé. Il n'y a donc plus de dossier de ce type. L'erreur se produit-elle parce que cmake fait référence à un chemin invalide qui n'existe plus ?? Pourquoi cmake fait-il référence à l'emplacement d'Android sdk ?? Est-ce même important d'ouvrir?
J'ai cherché sur Google pendant des heures, mais peu d'aide a été trouvée. S'il vous plaît aidez-moi si vous avez des idées.
Merci d'avance.
Grâce à l'aide de tous, j'ai pu résoudre mon problème.
Voici ce que j'ai fait pour d'autres personnes susceptibles de souffrir du même problème à l'avenir:
c'était parce que mon $PATH
était foiré (je pense que c'est arrivé lorsque j'ai essayé d'ajouter Android SDK à $PATH
)
J'ai effacé le .bash_profile
et ajouté C++ ainsi que make et /opt/local/bin
, /opt/local/sbin
comme ça
export PATH=$PATH:/opt/local/bin:/opt/local/sbin:/usr/bin/c++:/usr/bin/make
et cela a fonctionné comme un charme.
J'ai eu le même problème - ce qui a bien fonctionné a été de supprimer les outils de ligne de commande:
rm -rf /Library/Developer/CommandLineTools
Puis réinstallez l'outil de ligne de commande:
xcode-select --install
Qui sait ce que fait ce script ... et je n'ai pas le temps d'enquêter alors voilà ...
J'ai trouvé une autre solution: placer set(CMAKE_C_COMPILER gcc)
tout en haut de mon CMakeLists.txt
. Pour référence, j'ai eu cette erreur juste après l'installation d'une mise à jour CLion.
Voici mon CMakeLists.txt
final:
set(CMAKE_C_COMPILER gcc)
cmake_minimum_required(VERSION 3.6)
project(...)
set(CMAKE_CXX_STANDARD 11)
set(SOURCE_FILES XXX.cpp)
add_executable(... ${SOURCE_FILES})
J'ai également rencontré ce problème, je l'ai résolu en définissant les correctes CXXFLAGS et CPPFLAGS. Je pense que vous devriez aussi vérifier.
Une solution simple serait:
CPPFLAGS := $(CPPFLAGS) $(CFLAGS)
CXXFLAGS := $(CXXFLAGS) $(CFLAGS)
Pour moi, mon premier problème était que je n'avais pas les outils de ligne de commande Xcode. Alors je les ai eu (xcode-select --install
dans le terminal), et j'ai toujours le problème. La solution? Fermez la fenêtre du terminal et créez-en une nouvelle. Alors voila!