Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreure de compilateur Cmake

Pas de compilateur C et CXX

    11 mai 2022 à 8:21:54

    Bonjour,

    Je suis très novice en Cmake et C++. Je dois compilé un projet qui est parfaitement configuré car il compile sur notre server de build. Pour des raisons évidentes je voudrais pouvoir le compiler en local.

    Pour se faire j'ai donc télécharger Cmake, le compilateur C++ Visual Studio 14 2015 mais j'ai toujours les mêmes erreurs; 

    -- The C compiler identification is unknown

    -- The CXX compiler identification is unknown

    Dans le fichier CmakeError.log j'ai ceci;

    Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
    Compiler:  
    Build flags: 
    Id flags:  
    
    The output was:
    1
    Microsoft (R) Build Engine version 14.0.25420.1
    Copyright (C) Microsoft Corporation. All rights reserved.
    
    Build started 11/05/2022 08:24:07.
    Project "C:\build\my-project\debug\CMakeFiles\3.23.1\CompilerIdCXX\CompilerIdCXX.vcxproj" on node 1 (default targets).
    PrepareForBuild:
      Creating directory "Debug\".
      Creating directory "Debug\CompilerIdCXX.tlog\".
    InitializeBuildStatus:
      Creating "Debug\CompilerIdCXX.tlog\unsuccessfulbuild" because "AlwaysCreate" was specified.
    ClCompile:
      CL.exe /c /nologo /W0 /WX- /Od /Oy- /D _MBCS /Gm- /EHsc /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /Fo"Debug\\" /Fd"Debug\vc140.pdb" /Gd /TP /analyze- /errorReport:queue CMakeCXXCompilerId.cpp
    TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified. [C:\build\my-project\debug\CMakeFiles\3.23.1\CompilerIdCXX\CompilerIdCXX.vcxproj]
      
      
    Done Building Project "C:\build\my-project\debug\CMakeFiles\3.23.1\CompilerIdCXX\CompilerIdCXX.vcxproj" (default targets) -- FAILED.
    
    Build FAILED.
    
    "C:\build\my-project\debug\CMakeFiles\3.23.1\CompilerIdCXX\CompilerIdCXX.vcxproj" (default target) (1) ->
    (ClCompile target) -> 
      TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified. [C:\build\my-project\debug\CMakeFiles\3.23.1\CompilerIdCXX\CompilerIdCXX.vcxproj]
    
        0 Warning(s)
        1 Error(s)
    
    Time Elapsed 00:00:00.25

    J'ai regarder plusieurs solutions à ce problème mais aucune ne fonctionne. Auriez-vous des idées ?

    Dites moi s'il vous faut plus de détail ? 

    Merci d'avance.

    -
    Edité par JustinVuffray2 11 mai 2022 à 8:27:36

    • Partager sur Facebook
    • Partager sur Twitter
      11 mai 2022 à 8:45:14

      Il n'y a pas de cl.exe (le compilateur vs) dans ton PATH. Je pense que tu dois démarrer avec les outils en ligne de commande de VS (quelque part dans le menu il y a une entrée du style « Invite de commande x86-64 » je ne me souviens plus du nom). Avec ça tu pourras générer des makefile (option -G "NMake Makefiles") si tu souhaites compiler en ligne de commande.

      • Partager sur Facebook
      • Partager sur Twitter

      git is great because Linus did it, mercurial is better because he didn't.

        11 mai 2022 à 9:52:25

        Hello, merci pour ta réponse. Lorsque je lanse le VS 2015 devlopper prompt j'ai la même erreure mais j'ai vu que je n'avais pas CLang télécharger dans mon visual studio installer. Je vais tenter de télécharger ça lorsque mon Visual Studio installer vuet bien fonctionner.
        • Partager sur Facebook
        • Partager sur Twitter
          11 mai 2022 à 10:02:23

          Pas besoin de NMake pour compiler en ligne de commande, "cmake --build" fait ça très bien (et NMake est ultra lent)

          Télécharger clang ne réglera pas ton soucis, et passer par la developper prompt de VS non plus

          Il doit manquer des variables d'environnement qui sont normalement définies lors de l'install de VS.
          As-tu redémarré ton PC après avoir installé VS (ou même redémarré ta session peut suffire pour que les env vars soient prises en compte)

          Peux-tu montrer la ligne de commande que tu as utilisée pour CMake ?

          • Partager sur Facebook
          • Partager sur Twitter

          Si vous ne trouvez plus rien, cherchez autre chose.

            11 mai 2022 à 10:46:45

            Hello,

            Oui j'ai redémarré mon PC plusieurs fois.

            Voilà la ligne de commande que j'utilise; 

            CMake C:\git\my-project -G "Visual Studio 14 2015" -DCMAKE_BUILD_TYPE=Debug -DIMN_EXTERNAL_LIBS_FILE="C:\libs\libraries.txt"

            Dans mon fichier libraries j'ai le chemin vers mes librairies.

            Merci de t'être penché sur mon problème.

            • Partager sur Facebook
            • Partager sur Twitter
              11 mai 2022 à 12:26:58

              Tu pourrais déjà commencer par vérifier manuellement si cl.exe (et non CLang, rien à voir) se trouve quelque part dans ton système de fichier, puis vérifier tes variables d'environnement liées à Visual Studio.

              (et pour la digression sur le générateur, il y a encore mieux: Ninja)

              • Partager sur Facebook
              • Partager sur Twitter
                11 mai 2022 à 13:21:09

                SpaceIn a écrit:

                Tu pourrais déjà commencer par vérifier manuellement si cl.exe (et non CLang, rien à voir) se trouve quelque part dans ton système de fichier, puis vérifier tes variables d'environnement liées à Visual Studio.

                (et pour la digression sur le générateur, il y a encore mieux: Ninja)

                Il y a bien des cl.exe mais pas lié à Visual Studio 14 2015 (Seuelement ceux de VS 2022). Saurais-tu comment réparer cela ?

                (C'est un gros projet sur le quel je dois travailler, plein de chose déjà en place et avec mon faible niveau je ne prèfere pas modifier trop de chose :))

                • Partager sur Facebook
                • Partager sur Twitter
                  11 mai 2022 à 15:01:54

                  Avez-vous installé les "Work Load" pour le développement C++ dans l'installateur de VS2015 ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.
                    11 mai 2022 à 15:43:34

                    bacelar a écrit:

                    Avez-vous installé les "Work Load" pour le développement C++ dans l'installateur de VS2015 ?


                    J'ai tout ça qui est installé;
                    • Windows 10 SDK
                    • Web Developper Tools

                    mais le soucis est que je ne peux plus installer de nouveaux modules car ils ne sont plus disponible en ligne.... Par contre j'en ai téléchargé en utilisant Visual Studio Installer de la version 2022.

                    • C++ Cmake tools for windows
                    • MSVC v140 VS 2015 C++ build tools
                    • C++ core features
                    • Windows 10 SDK

                    Je ne sais pas si quelque chose me manque. Je suis allez télécharger Visual C++ Build Tools for Visual Studio 2015 with Update 3, après avoir tout désinstaller et cela fonctionne.

                    -
                    Edité par JustinVuffray2 11 mai 2022 à 16:45:25

                    • Partager sur Facebook
                    • Partager sur Twitter
                      11 mai 2022 à 17:12:10

                      Dans mes souvenir, le compilateur ne fait pas partie du SDK.

                      Il vaut mieux utiliser les dernières version des outils sur le poste de Dev.

                      S'il y a des problème de compatibilité, comme vous utilisez une usine de build, elle vous préviendra automatiquement si vous commitez des bêtises.

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

                      Erreure de compilateur Cmake

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown