cocos2d-x android构建失败

问题描述 投票:1回答:1

对不起,我不得不依赖谷歌翻译,因为我不会说英语。

我使用cocos compile -p android --android-studio命令构建了cocos2d-x项目。

我的开发环境: OS = Windows10 cocos2d-x = 3.17.1 ndk = r11c sdk = 27.0.3(android studio version = latest(3.2.1))

如何修复此构建错误?

> Task :gamer:generateJsonModelDebug FAILED
Task ':gamer:generateJsonModelDebug' is not up-to-date because:
  No history is available.
External native generate JSON debug: starting JSON generation
External native generate JSON debug: using platform version 16 for ABI 
ARMEABI_V7A and min SDK version 16
External native generate JSON debug: rebuilding JSON C:\Development\cocos2d- 
x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a\android_gradle_build.json due to:
External native generate JSON debug: - expected json C:\Development\cocos2d- 
x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a\android_gradle_build.json file is not present, will remove stale json 
folder
External native generate JSON debug: - missing previous command file 
C:\Development\cocos2d-x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a\cmake_build_command.txt, will remove stale json folder
External native generate JSON debug: removing stale contents from 
'C:\Development\cocos2d-x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a'
External native generate JSON debug: created folder 'C:\Development\cocos2d- 
x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a'
External native generate JSON debug: executing cmake Executable : 
C:\Development\sdk\cmake\3.10.2.4988404\bin\cmake.exe
arguments :
-HC:\Development\cocos2d-x-3.17.1\tools\cocos2d-console\bin\gamer
-BC:\Development\cocos2d-x-3.17.1\tools\cocos2d- 

console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a
-DANDROID_ABI=armeabi-v7a
-DANDROID_PLATFORM=android-16
-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=C:\Development\cocos2d-x- 
 3.17.1\tools\cocos2d- 



 > Task :gamer:generateJsonModelDebug FAILED
Task ':gamer:generateJsonModelDebug' is not up-to-date because:
  No history is available.
External native generate JSON debug: starting JSON generation
External native generate JSON debug: using platform version 16 for ABI 
ARMEABI_V7A and min SDK version 16
External native generate JSON debug: rebuilding JSON C:\Development\cocos2d- 
x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a\android_gradle_build.json due to:
External native generate JSON debug: - expected json C:\Development\cocos2d- 
x-3.17.1\tools\cocos2d- 
console\bin\gamer\proj.android\app\.externalNativeBuild\cmake\debug\armeabi- 
v7a\android_gradle_build.json file is not present, will remove stale json 
folder
External native generate JSON debug: - missing previous command file 
C:\Development\cocos2d-x-3.17.1\tools\cocos2d- 

console \ bin \ gamer \ proj.android \ app.externalNativeBuild \ cmake \ debug \ armeabi- v7a \ cmake_build_command.txt,将删除过时的json文件夹外部本机生成JSON调试:从'C:\ Development \ cocos2d-x中删除陈旧内容-3.17.1 \ tools \ cocos2d- console \ bin \ gamer \ proj.android \ app.externalNativeBuild \ cmake \ debug \ armeabi- v7a'外部本机生成JSON调试:创建文件夹'C:\ Development \ cocos2d-x-3.17 .1 \ tools \ cocos2d-console \ bin \ gamer \ proj.android \ app.externalNativeBuild \ cmake \ debug \ armeabi- v7a'外部本机生成JSON调试:执行cmake可执行文件:C:\ Development \ sdk \ cmake \ 3.10。 2.4988404 \ bin \ cmake.exe参数:-HC:\ Development \ cocos2d-x-3.17.1 \ tools \ cocos2d-console \ bin \ gamer -BC:\ Development \ cocos2d-x-3.17.1 \ tools \ cocos2d- console \ bin \ gamer \ proj.android \ app.externalNativeBuild \ cmake \ debug \ armeabi- v7a -DANDROID_ABI = armeabi-v7a -DANDROID_PLATFORM = android-16 -DCMAKE_LIBRARY_OUTPUT_DIRECTORY = C:\ Development \ cocos2d-x- 3.17.1 \ tools \ cocos2d-

console \ bin \ gamer \ proj.android \ app \ build \ intermediates \ cmake \ debug \ obj \ armeabi- v7a -DCMAKE_BUILD_TYPE = Debug -DANDROID_NDK = C:\ Development \ android-ndk-r11c -DCMAKE_CXX_FLAGS = -frtti -fexceptions - fsigned-char -DCMAKE_SYSTEM_NAME = Android -DCMAKE_ANDROID_ARCH_ABI = armeabi-v7a -DCMAKE_SYSTEM_VERSION = 16 -DCMAKE_EXPORT_COMPILE_COMMANDS = ON -DCMAKE_ANDROID_NDK = C:\ Development \ android-ndk-r11c -DCMAKE_TOOLCHAIN_FILE = C:\ Development \ cocos2d-x-3.17.1 \ tools \ cocos2d- console \ bin \ gamer \ proj.android \ app.externalNativeBuild \ cmake \ debug \ armeabi- v7a \ pre-ndk-r15-wrapper-android.toolchain.cmake -G Ninja -DCMAKE_FIND_ROOT_PATH = -DANDROID_STL = c + + _static -DANDROID_TOOLCHAIN = clang -DANDROID_ARM_NEON = TRUE jvmArgs:

[== "CMake Server" ==[

{ “supportedProtocolVersions”:[{ “isExperimental”:真, “主要”:1, “次要的”:1}], “类型”: “你好”}

] ==“CMake Server”==]

[==“CMake Server”== [

{“type”:“handshake”,“cookie”:“gradle-cmake-cookie”,“protocolVersion”:{“isExperimental”:true,“major”:1,“minor”:1},“sourceDirectory”:“ C:/Development/cocos2d-x-3.17.1/tools/cocos2d-console/bin/gamer“,”buildDirectory“:”C:/Development/cocos2d-x-3.17.1/tools/cocos2d-console/bin/ gamer / proj.android / app / .externalNativeBuild / cmake / debug / armeabi-v7a“,”generator“:”Ninja“}

] ==“CMake Server”==]

[==“CMake Server”== [

{ “饼干”: “的gradle-cmake的cookie的”, “inReplyTo”: “握手”, “类型”: “回复”}

] ==“CMake Server”==]

[==“CMake Server”== [

{“type”:“configure”,“cacheArguments”:[“”,“ - DANDROID_ABI \ u003darmeabi-v7a”,“ - DANDROID_PLATFORM \ u003dandroid-16”,“ - DCMAKE_LIBRARY_OUTPUT_DIRECTORY \ u003dC:\ Development \ cocos2d-x-3.17。 1 \ tools \ cocos2d-console \ bin \ gamer \ proj.android \ app \ build \ intermediates \ cmake \ debug \ obj \ armeabi-v7a“,” - DCMAKE_BUILD_TYPE \ u003dDebug“,” - DANDROID_NDK \ u003dC:\ Development \ android -ndk-r11c“,” - DCMAKE_CXX_FLAGS \ u003d-frtti -fexceptions -fsigned-char“,” - DCMAKE_SYSTEM_NAME \ u003dAndroid“,” - DCMAKE_ANDROID_ARCH_ABI \ u003darmeabi-v7a“,” - DCMAKE_SYSTEM_VERSION \ u003d16“,” - DCMAKE_EXPORT_COMPILE_COMMANDS \ u003dON“ ,“ - DCMAKE_ANDROID_NDK \ u003dC:\ Development \ android-ndk-r11c”,“ - DCMAKE_TOOLCHAIN_FILE \ u003dC:\ Development \ cocos2d-x-3.17.1 \ tools \ cocos2d-console \ bin \ gamer \ proj.android \ app \ .externalNativeBuild \ cmake \ debug \ armeabi-v7a \ pre-ndk-r15-wrapper-android.toolchain.cmake“,” - G Ninja“,” - DCMAKE_FIND_ROOT_PATH \ u003d“,” - DANDROID_STL \ u003dc ++ _ static“,” -DANDROID_TOOLCHAIN \ u003dclang“,” - DANDROID_ARM_NEON \ u003dTRUE“]}

] ==“CMake Server”==]

[==“CMake Server”== [

{“cookie”:“”,“inReplyTo”:“configure”,“message”:“C语言中的CMake错误:/Development/sdk/cmake/3.10.2.4988404/android.toolchain.cmake:356(消息):\ n无效的Android NDK版本(应该是12):11.2.2725575。\ n呼叫堆栈(最近的呼叫优先):\ n proj.android/app/.externalNativeBuild/cmake/debug/armeabi-v7a/pre-ndk-r15-wrapper -android.toolchain.cmake:2(包含)\ n C:/Development/sdk/cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94(include)\ n CMakeLists.txt:30(项目)\ n \ n”, “标题”: “错误”, “类型”: “消息”}

] ==“CMake Server”==]

C语言中的CMake错误:/Development/sdk/cmake/3.10.2.4988404/android.toolchain.cmake:356(消息):无效的Android NDK修订版(应为12):11.2.2725575。调用堆栈(最近一次调用):proj.android/app/.externalNativeBuild/cmake/debug/armeabi-v7a/pre-ndk-r15-wrapper-android.toolchain.cmake:2(include)C:/ Development / sdk /cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94(include)CMakeLists.txt:30(项目)

C语言中的CMake错误:/Development/sdk/cmake/3.10.2.4988404/android.toolchain.cmake:356(消息):无效的Android NDK修订版(应为12):11.2.2725575。调用堆栈(最近一次调用):proj.android/app/.externalNativeBuild/cmake/debug/armeabi-v7a/pre-ndk-r15-wrapper-android.toolchain.cmake:2(include)C:/ Development / sdk /cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94(include)CMakeLists.txt:30(项目)

[==“CMake Server”== [

{“cookie”:“”,“inReplyTo”:“configure”,“message”:“CMake错误:CMake无法找到与”Ninja \“相对应的构建程序。未设置CMAKE_MAKE_PROGRAM。您可能需要选择一个不同的构建工具。“,”title“:”错误“,”类型“:”消息“}

] ==“CMake Server”==]

CMake错误:CMake无法找到与“Ninja”对应的构建程序。未设置CMAKE_MAKE_PROGRAM。您可能需要选择其他构建工具。 CMake错误:CMake无法找到与“Ninja”对应的构建程序。未设置CMAKE_MAKE_PROGRAM。您可能需要选择其他构建工具。

[==“CMake Server”== [

{“cookie”:“”,“inReplyTo”:“configure”,“message”:“CMake错误:CMAKE_C_COMPILER未设置,在EnableLanguage之后”,“title”:“Error”,“type”:“message”}

] ==“CMake Server”==]

CMake错误:在EnableLanguage CMake错误:未设置CMAKE_C_COMPILER之后,未设置CMAKE_C_COMPILER,在EnableLanguage之后

[==“CMake Server”== [

{“cookie”:“”,“inReplyTo”:“configure”,“message”:“CMake错误:CMAKE_CXX_COMPILER未设置,在EnableLanguage之后”,“title”:“Error”,“type”:“message”}

] ==“CMake Server”==]

CMake错误:在EnableLanguage CMake错误:未设置CMAKE_CXX_COMPILER之后,未设置CMAKE_CXX_COMPILER,在EnableLanguage之后

[==“CMake Server”== [

{ “饼干”: “”, “inReplyTo”: “配置”, “progressCurrent”:1000, “progressMaximum”:1000, “progressMessage”: “配置”, “progressMinimum”:0, “类型”: “进步”}

] ==“CMake Server”==]

[==“CMake Server”== [

{“cookie”:“”,“inReplyTo”:“configure”,“message”:“配置不完整,发生错误!”,“类型”:“消息”}

] ==“CMake Server”==]

配置不完整,发生错误!配置不完整,发生错误!

[==“CMake Server”== [

{“cookie”:“”,“errorMessage”:“配置失败。”,“inReplyTo”:“configure”,“type”:“error”}

] ==“CMake Server”==]

配置失败。外部本机生成JSON调试:JSON生成已完成但存在问题

:gamer:generateJsonModelDebug(Thread [任务工作者':'线程7,5,主要])完成。花了0.2秒。

任务:libcocos2dx:platformAttrExtractor任务':libcocos2dx:platformAttrExtractor'不是最新的,因为:没有可用的历史记录。

:libcocos2dx:platformAttrExtractor(Thread [forWork worker for':'Thread 5,5,main])完成。花了0.232秒。

FAILURE: Build failed with an exception.
  • 出了什么问题:任务'执行失败':gamer:generateJsonModelDebug'。 com.android.ide.common.process.ProcessException:配置错误
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--debug选项运行以获取更多日志输出。使用--scan运行以获得完整的见解。
  • https://help.gradle.org获得更多帮助

在21s中构建失败21个可操作的任务:21个执行错误运行命令,返回码:1。

我怎么了?

android c++ build cocos2d-x
1个回答
2
投票

CMake错误:CMake无法找到与“Ninja”对应的构建程序。

cocos2d-x 3.17.1使用CMake,跨平台构建系统(默认情况下)。

Google主要通过在SDK中自动下载来升级缺少的依赖项。 例如CMake从3.6升级到3.10(最新cMake中需要忍者)。

所以你要在你的系统中安装Ninja。

我希望这能解决你的问题。

© www.soinside.com 2019 - 2024. All rights reserved.