web-dev-qa-db-fra.com

Impossible de trouver CMake dans Android Studio

Je dois ajouter du code C/C++ dans mon programme Android pour lequel j'avais besoin de LLDB, CMake et NDK. J'ai trouvé LLDB et NDK dans le gestionnaire de SDK, mais CMake en manque. J'ai essayé de le télécharger manuellement à partir du site officiel de CMake et j'ai découvert que pour Android, nous avons besoin du CMK personnalisé par SDK.

 Enter image description here

Comme vous pouvez le constater, il n’existe pas d’option comme CMake.

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

J'ai essayé CMake sur 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 tirer 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
58
ashish mishra
  • Ouvrir SDK Manager
  • Basculer vers l'onglet SDK Tools
  • Installez CMake

 Example Image

107
Kemal Türk

Si vous procédez comme suit, vous obtiendrez CMake sans aucun problème:

  1. Ouvrez les paramètres (Android Studio);
  2. Recherche par "SDK Android";
  3. Sur le côté droit, accédez à la palette | onglet "Outils du SDK";
  4. Vérifiez l'élément "CMake" sur la liste;
  5. Presse OK bouton;
  6. Maintenant, attendez le prochain siècle pendant que Gradle construit, = D.
26
Fabio Filho
  • Aller au gestionnaire de SDK Android
  • Sélectionnez Android SDK Tools
  • Trouvez CMake et cliquez Apply Télécharger.
  • Cliquez plus tard OK Instructions
8
Girish B.R
  1. Vérifiez votre fichier build.gradle pour le module de votre application

    externalNativeBuild {
        cmake {
            path "CMakeLists.txt"
        }
    }
    
  2. Supprimer la section cmake

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

  4. Cliquez avec le bouton droit sur le module, tel que le module d'application, sélectionnez "Lier un projet C++ avec Gradle" dans le menu.

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

     Enter image description here

  6. Cliquez sur OK.

6
user2477865

Dans mon cas (Android Studio 3.0), il n'y avait pas de CMake dans l'onglet "Outils du SDK" des options "Apparence et comportement -> Paramètres système -> SDK Android". Cependant, j'ai remarqué que dans l'onglet "Sites de mise à jour du SDK", il n'y avait que deux entrées, l'une d'entre elles (Android Repository https://dl.google.com/Android/repository/repository2-1.xml ) avait une marque rouge dans la colonne "activé". Il lit "erreur 407" au passage de la souris, ce qui est une erreur d’authentification du proxy. J'avais les paramètres de proxy corrects (la connexion de test fonctionnait correctement avec la même URL de référentiel), donc c'était très étrange. Redémarrer Android Studio n'a pas aidé. J'ai donc ajouté une nouvelle entrée avec le même référentiel. Cette fois, cela a bien fonctionné et CMake est apparu dans l'autre onglet. J'espère que ça aide quelqu'un.

1
The White Lion

Vous pouvez l'installer dans les outils du SDK Manager, mais vous devez d'abord fermer votre projet ouvert. Utilisez la configuration dans le menu de démarrage.

1
Jeremy Clarkson

 enter image description here

  1. Ouvrir Android Studio ????
  2. Survolez votre barre d'outils jusqu'à ce que vous trouviez SDK Manager, comme dans l'image ci-dessus.
  3. Cliquez sur SDK Manager
  4. Dans Préférences par défaut, accédez à Apparence et comportement
  5. Maintenant, sélectionnez Paramètres système
  6. Maintenant, sélectionnez Android SDK
  7. Cliquez sur Outils SDK
  8. Vérifiez sur CMake
1
Yusuf

Vérifiez si vous utilisez une version 64 bits d'Android Studio. Dans Android Studio 32 bits, CMake n'apparaîtra pas dans le gestionnaire de SDK.

0
Snow Bases

place le chemin du module où se trouve votre cmake

si votre cmake existe dans l'application principale

 externalNativeBuild {
                cmake {
                        path "CMakeLists.txt"
                      }
            }

si votre cmake existe dans n'importe quel module

  externalNativeBuild {
                cmake {
                    path file('../modulelib/CMakeLists.txt')
                }
            }

où "modulelib" est le nom de dossier de votre module de bibliothèque

0
AMD

Dans mon cas, changer CMake path a fonctionné:

externalNativeBuild {
    /*
      cmake {
          path "CMakeLists.txt"
      }
    */

    cmake {
        path 'src/main/jni/opus/CMakeLists.txt'
    }
}
0
Nilesh Deokar

Pour moi, Mac OS Android Studio. Dans Fichier-> Structure du projet-> Projet, j'ai changé la version de Gradle vers la version 4.4 et la version du plug-in Android vers la version 3.1.0.

De plus, vous pouvez également changer la version du plugin Android dans gradle-> classpath 'com.Android.tools.build:gradle:3.1.0'

0
ran5515

Cochez cette case, je pense que ce site explique ce dont vous avez besoin:

https://codelabs.developers.google.com/codelabs/Android-studio-cmake/index.html?index=..%2F..%2Findex#0

N'oubliez pas de cocher la case "Ce dont vous aurez besoin" 

Mettre à jour:

NDK: https://developer.Android.com/ndk/downloads/index.html Source: https://developer.Android.com/ndk/index.html

CMake: https://cmake.org/files/v3.7/cmake-3.7.1-win64-x64.Zip Source: https://cmake.org/

LLDB (Juste pour les systèmes Debian): http://apt.llvm.org/ Source: http://lldb.llvm.org/download.html

Une fois que vous avez téléchargé ces fichiers, copiez-les dans votre dossier SDK (normalement dans: "C:\Android-sdk \") Vous pouvez localiser le dossier ici:

  1. Fichier -> Structure du projet dans la structure du projet
  2. Gauche -> Emplacement du SDK

Ensuite, vous pouvez continuer avec le guide précédent après les téléchargements :)

0
Alberto