Ошибка после обновления Android Studio NDK: CMAKE_C_COMPILER и CMAKE_CXX_COMPILER не установлены - PullRequest
0 голосов
/ 18 мая 2018

После обновления Android Studio NDK я не могу собрать свое приложение из-за ошибки, связанной с CMAKE (мое приложение использует один файл c ++).Вот строки с ошибками:

Build command failed.
Error while executing process C:\Users\AnimallTag\AppData\Local\Android\sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {-HC:\Projetos\Git\at65\app -BC:\Projetos\Git\at65\app\.externalNativeBuild\cmake\debug\mips -GAndroid Gradle - Ninja -DANDROID_ABI=mips -DANDROID_NDK=C:\Users\AnimallTag\AppData\Local\Android\sdk\ndk-bundle -DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Projetos\Git\at65\app\build\intermediates\cmake\debug\obj\mips -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=C:\Users\AnimallTag\AppData\Local\Android\sdk\cmake\3.6.4111459\bin\ninja.exe -DCMAKE_TOOLCHAIN_FILE=C:\Users\AnimallTag\AppData\Local\Android\sdk\ndk-bundle\build\cmake\android.toolchain.cmake -DANDROID_PLATFORM=android-14}
 (include)   CMakeLists.txt 
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!

Любое предложение, чтобы помочь мне решить эту проблему?Возможно, я смогу понизить версию NDK или Android Studio до предыдущей версии, которую смогу установить ...

Error screen in Android Studio

Ответы [ 4 ]

0 голосов
/ 17 мая 2019

Эй, я столкнулся с подобной проблемой после установки ndk-bundle , ошибка была решена следующим образом:

Добавьте следующий фрагмент кода в build.gradle файл( уровень модуля ):

android {
   defaultConfig {
       ndk {
            abiFilters "armeabi-v7a", "x86"
        }

        externalNativeBuild {
            cmake {
                abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86', 'x86_64'
            }
        }
      }
}

Примечание: Если у вас уже есть код такого типа в файле build.gradle, убедитесь, что в нем нет лишних abiFilters вместо тех, что я здесь упомянул.

Также убедитесь, что вы добавили:
distributionUrl = https://services.gradle.org/distributions/gradle-4.6-all.zip

в gradle / wrapper / gradle-wrapper.properties file.

Спасибо!Удачного кодирования:)

0 голосов
/ 07 августа 2018

В моем случае у меня было две папки для установки NDK.Мне нужно было обновить мои local.properties , чтобы они указывали на правильный каталог.Я обновил свой NDK и build.gradle (через ответы выше), повторно синхронизировал, тогда все работало хорошо.

0 голосов
/ 23 сентября 2018

После NDK Недавнее обновление CMAKE ломалось

Ничего не сработало, но Я понизил NDK, загрузив NDK из https://developer.android.com/ndk/downloads/older_releases

и изменил NDK DIR PATH в local.properties на

ndk.dir=/Users/kathan/Library/Android/sdk/android-ndk-r17c

И просто синхронизировать Gradle.

Работает как Шарм

0 голосов
/ 18 мая 2018

Мне удалось это исправить. Одна вещь, которую я заметил, - это список изменений Android NDK, и в нем говорится, что больше нет поддержки ABI armeabi, MIPS и MIPS64, поэтому я отфильтровал ABI в своем файле build.gradle:

android {
    defaultConfig {
        externalNativeBuild {
            cmake {
                abiFilters 'arm64-v8a', 'armeabi-v7a', 'x86', 'x86_64'
            }
        }
    }
}

После этого я синхронизировал gradle, и Android Studio предложила мне обновить Gradle, и я это сделал. Приложение теперь может быть развернуто, но я не уверен, что его исправили. Видимо, ошибка не была связана ни с CMAKE_C_COMPILER, ни с CMAKE_CXX_COMPILER, это происходило где-то еще, и когда сборка не удалась, она не смогла найти эти переменные. Может быть, это тоже кому-то поможет ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...