79 votes

Impossible de trouver CMake dans Android Studio

J'ai besoin d'ajouter du code C/C++ dans mon programme Android pour lequel j'ai eu besoin de LLDB, CMake, et NDK. J'ai trouvé LLDB et NDK dans le gestionnaire de SDK, mais CMake en est absent. J'ai essayé de le télécharger manuellement depuis le site officiel de CMake et j'ai découvert que pour Android, nous avons besoin de SDK personnalisés de CMake.

Enter image description here

Comme vous pouvez le voir, il n'y a pas d'option telle que CMake.

Où puis-je trouver une version de CMake pour Android ?

J'ai essayé CMake depuis le site web et celui que j'ai trouvé dans le dossier ndk-bundle/build, mais les deux donnent la même erreur que ci-dessous. Que peut-on en déduire et comment résoudre le problème ?

Build command failed.

Error while executing 'C:\Users\amishr33\AppData\Local\Android\sdk\cmake\bin\cmake.exe' with arguments {-HC:\Users\amishr33\AndroidStudioProjects\MyApplication\app\src\main\jni -BC:\Users\amishr33\AndroidStudioProjects\MyApplication\app\.externalNativeBuild\cmake\debug\armeabi -GAndroid Gradle - Ninja -DANDROID_ABI=armeabi -DANDROID_NDK=C:\Users\amishr33\AppData\Local\Android\sdk\ndk-bundle -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Users\amishr33\AndroidStudioProjects\MyApplication\app\build\intermediates\cmake\debug\obj\armeabi -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=C:\Users\amishr33\AppData\Local\Android\sdk\cmake\bin\ninja.exe -DCMAKE_TOOLCHAIN_FILE=C:\Users\amishr33\AppData\Local\Android\sdk\ndk-bundle\build\cmake\android.toolchain.cmake -DANDROID_NATIVE_API_LEVEL=15 -DCMAKE_CXX_FLAGS=-std=c++11 -DANDROID_TOOLCHAIN=clang -DANDROID_STL=gnustl_static}
CMake Error: Could not create named generator Android Gradle - Ninja
Generators
  Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 10 2010 [arch] = Generates Visual Studio 2010 project files.
                                 Optional [arch] can be "Win64" or "IA64".
  Visual Studio 9 2008 [arch]  = Generates Visual Studio 2008 project files.
                                 Optional [arch] can be "Win64" or "IA64".
  Visual Studio 8 2005 [arch]  = Generates Visual Studio 2005 project files.
                                 Optional [arch] can be "Win64".
  Visual Studio 7 .NET 2003    = Deprecated.  Generates Visual Studio .NET
                                 2003 project files.
  Borland Makefiles            = Generates Borland makefiles.
  NMake Makefiles              = Generates NMake makefiles.
  NMake Makefiles JOM          = Generates JOM makefiles.
  Green Hills MULTI            = Generates Green Hills MULTI files
                                 (experimental, work-in-progress).
  MSYS Makefiles               = Generates MSYS makefiles.
  MinGW Makefiles              = Generates a make file for use with
                                 mingw32-make.
  Unix Makefiles               = Generates standard UNIX makefiles.
  Ninja                        = Generates build.ninja files.
  Watcom WMake                 = Generates Watcom WMake makefiles.
  CodeBlocks - MinGW Makefiles = Generates CodeBlocks project files.
  CodeBlocks - NMake Makefiles = Generates CodeBlocks project files.
  CodeBlocks - Ninja           = Generates CodeBlocks project files.
  CodeBlocks - Unix Makefiles  = Generates CodeBlocks project files.
  CodeLite - MinGW Makefiles   = Generates CodeLite project files.
  CodeLite - NMake Makefiles   = Generates CodeLite project files.
  CodeLite - Ninja             = Generates CodeLite project files.
  CodeLite - Unix Makefiles    = Generates CodeLite project files.
  Sublime Text 2 - MinGW Makefiles
                               = Generates Sublime Text 2 project files.
  Sublime Text 2 - NMake Makefiles
                               = Generates Sublime Text 2 project files.
  Sublime Text 2 - Ninja       = Generates Sublime Text 2 project files.
  Sublime Text 2 - Unix Makefiles
                               = Generates Sublime Text 2 project files.
  Kate - MinGW Makefiles       = Generates Kate project files.
  Kate - NMake Makefiles       = Generates Kate project files.
  Kate - Ninja                 = Generates Kate project files.
  Kate - Unix Makefiles        = Generates Kate project files.
  Eclipse CDT4 - NMake Makefiles
                               = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - MinGW Makefiles
                               = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - Ninja         = Generates Eclipse CDT 4.0 project files.
  Eclipse CDT4 - Unix Makefiles= Generates Eclipse CDT 4.0 project files.
Error:executing external native build for cmake C:\Users\amishr33\AndroidStudioProjects\MyApplication\app\src\main\jni\CMakeLists.txt

0 votes

Quelle version d'Android Studio utilisez-vous ? Essayez de mise à jour de la dernière version J'ai essayé de mettre à jour mon Android Studio en 2.2.3 et dans Android SDK --> SDK Tools il m'apparaît comme vous pouvez le voir ici : capture d'écran J'espère t'avoir aidé m8 :D Désolé de répondre un peu tard :(

5 votes

Utilisez-vous un Windows 32 bits ? Android Studio Cmake ne fonctionne que sur les machines 64 bits. C'est pourquoi vous ne trouvez pas Cmake dans le gestionnaire de SDK.

2 votes

Assurez-vous que vous utilisez Android Studio 64 bits ! Voir ce stackoverflow.com/questions/42912919/

127voto

Kemal Türk Points 1327
  • Abrir Gestionnaire de SDK
  • Passez à la Outils SDK onglet
  • Installer CMake

Example Image

12 votes

Je pense que la question porte sur l'absence de CMake dans les outils SDK.

1 votes

Pourquoi est-ce dans "Apparence et comportement" ?

28voto

Fabio Filho Points 358

Si vous faites ce qui suit, vous pouvez obtenir CMake sans problème :

  1. Ouvrez les paramètres (Android Studio) ;
  2. Recherchez par "Android SDK" ;
  3. Sur le côté droit, allez dans la palette "SDK Tools" ;
  4. Vérifiez l'élément "CMake" sur la liste ;
  5. Appuyez sur OK bouton ;
  6. Maintenant, il suffit d'attendre le prochain siècle pendant que Gradle construit, =D .

0 votes

Je pense que le problème est qu'aucun CMake n'est affiché dans le menu.

14voto

user2477865 Points 118
  1. Vérifiez le module de votre application dans votre fichier build.gradle.

    externalNativeBuild {
        cmake {
            path "CMakeLists.txt"
        }
    }
  2. Retirer le cmake section

  3. Re-synchronisez le projet : allez dans le menu Build -> Refersh Lined C++ Projects

  4. Faites un clic droit sur le module, par exemple le module app, et sélectionnez "Link C++ Project with Gradle" dans le menu.

  5. Vous devriez voir une boîte de dialogue similaire à celle illustrée dans la figure ci-dessous.

    Enter image description here

  6. Cliquez sur OK.

0 votes

Il n'y a pas d'article Refersh Lined C++ Projects dans le menu as3

0 votes

Merci mais j'ai un problème dans l'erreur cMakeList.txt set_target_properties pouvez-vous m'aider s'il vous plaît ?

0 votes

Merci beaucoup, cela m'a fait gagner beaucoup de temps.

8voto

Girish B.R Points 189
  • Allez dans le gestionnaire Android SDK
  • Sélectionnez Android SDK Tools
  • Trouvez CMake et cliquez Apply à télécharger.
  • Cliquez ensuite OK Instructions

0 votes

Merci Girish. C'est la meilleure façon de le réparer et ça a marché pour moi !

1voto

The White Lion Points 11

Dans mon cas (Android Studio 3.0), il n'y avait pas de CMake dans l'onglet "SDK Tools" dans les options "Appearance & Behaviour -> System Settings -> Android SDK". Cependant, j'ai remarqué que dans l'onglet "Sites de mise à jour du SDK", il n'y a que deux entrées, dont l'une (Android Repository https://dl.google.com/Android/repository/repository2-1.xml ) avait une marque rouge dans la colonne "enabled". Au passage de la souris, on pouvait lire "error 407", qui est une erreur d'authentification du proxy. Les paramètres du proxy étaient corrects (la connexion de test fonctionnait bien avec la même URL de référentiel), ce qui est très étrange. Le redémarrage d'Android studio n'a pas aidé. J'ai donc ajouté une nouvelle entrée avec le même référentiel et cette fois, cela a bien fonctionné et CMake est apparu dans l'autre onglet. J'espère que cela aidera quelqu'un.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X