簡體   English   中英

cocos2d-x android 構建失敗

[英]cocos2d-x android build failed

對不起,我不得不依賴谷歌翻譯,因為我的英語說得不好。

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

我的開發環境:
操作系統 = Windows10
cocos2d-x = 3.17.1
ndk = r11c
sdk = 27.0.3(android studio 版本 = 最新(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- 

控制台\\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-控制台\\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-1\\tools1 \\cocos2d-

控制台\\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_TOOLCcosA.工具\\cocos2d-控制台\\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":true,"major":1,"minor":1}],"type":"hello"}

]== “CMake 服務器” ==]

[== “CMake 服務器” ==[

{ "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 服務器” ==]

[== “CMake 服務器” ==[

{"cookie":"gradle-cmake-cookie","inReplyTo":"handshake","type":"reply"}

]== “CMake 服務器” ==]

[== “CMake 服務器” ==[

{ "type": "configure", "cacheArguments": [ "", "-DANDROID_ABI\=armeabi-v7a", "-DANDROID_PLATFORM\=android-16", "-DCMAKE_LIBRARY_OUTPUT_DIRECTORY\=C:\\Development.x3cos 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_6DCMAKEON_0DS0DCMAKE_6"0dDCMAKE_0DS0DCMAKE_0DS0DCMAKE_SYSTEM_0DS0DCMAKE\\SYSTEM_0DSPI , "-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" ] }

]== “CMake 服務器” ==]

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","message":"CMake Error at C:/Development/sdk/cmake/3.10.2.4988404/android.toolchain.cmake:356 (message):\\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(包含)\\n CMakeLists.txt:30(項目)\\n\\n","title":"錯誤","type":"message"}

]== “CMake 服務器” ==]

CMake 錯誤在 C:/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(包括)C:/Development/sdk /cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94(包括)CMakeLists.txt:30(項目)

CMake 錯誤在 C:/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(包括)C:/Development/sdk /cmake/3.10.2.4988404/share/cmake-3.10/Modules/CMakeDetermineSystem.cmake:94(包括)CMakeLists.txt:30(項目)

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","message":"CMake 錯誤:CMake 無法找到與\\"Ninja\\"對應的構建程序。未設置 CMAKE_MAKE_PROGRAM。您可能需要選擇一個不同的構建工具。","title":"Error","type":"message"}

]== “CMake 服務器” ==]

CMake 錯誤:CMake 無法找到與“Ninja”相對應的構建程序。 CMAKE_MAKE_PROGRAM 未設置。 您可能需要選擇不同的構建工具。 CMake 錯誤:CMake 無法找到與“Ninja”相對應的構建程序。 CMAKE_MAKE_PROGRAM 未設置。 您可能需要選擇不同的構建工具。

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","message":"CMake 錯誤:CMAKE_C_COMPILER 未設置,在 EnableLanguage 之后","title":"錯誤","type":"message"}

]== “CMake 服務器” ==]

CMake 錯誤:CMAKE_C_COMPILER 未設置,EnableLanguage 之后 CMake 錯誤:CMAKE_C_COMPILER 未設置,EnableLanguage 之后

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","message":"CMake 錯誤:CMAKE_CXX_COMPILER 未設置,在 EnableLanguage 之后","title":"錯誤","type":"message"}

]== “CMake 服務器” ==]

CMake 錯誤:CMAKE_CXX_COMPILER 未設置,EnableLanguage 之后 CMake 錯誤:CMAKE_CXX_COMPILER 未設置,EnableLanguage 之后

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","progressCurrent":1000,"progressMaximum":1000,"progressMessage":"Configuring","progressMinimum":0,"type":"progress"}

]== “CMake 服務器” ==]

[== “CMake 服務器” ==[

{"cookie":"","inReplyTo":"configure","message":"配置不完整,出現錯誤!","type":"message"}

]== “CMake 服務器” ==]

配置不完整,出現錯誤! 配置不完整,出現錯誤!

[== “CMake 服務器” ==[

{"cookie":"","errorMessage":"配置失敗。","inReplyTo":"configure","type":"error"}

]== “CMake 服務器” ==]

配置失敗。 外部原生生成JSON調試:JSON生成完成,有問題

:gamer:generateJsonModelDebug (Thread [Task worker for ':' Thread 7,5,main]) 已完成。 花了 0.2 秒。

任務 :libcocos2dx:pla​​tformAttrExtractor 任務 ':libcocos2dx:pla​​tformAttrExtractor' 不是最新的,因為: 沒有可用的歷史記錄。

:libcocos2dx:pla​​tformAttrExtractor (Thread [Task 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獲取更多幫助

BUILD 在 21 秒內失敗 21 個可操作的任務:21 個執行錯誤運行命令,返回代碼:1。

我怎么了?

CMake 錯誤:CMake 無法找到與“Ninja”相對應的構建程序。

cocos2d-x 3.17.1使用 CMake,跨平台構建系統(默認)。

谷歌主要通過在 SDK 中自動下載來升級缺少的依賴項。
例如,CMake 從3.6升級到3.10 (最新的 cMake 需要 ninja)。

所以你必須在你的系統中安裝 Ninja

我希望這能解決你的問題。

macOS 10.15 + cpp3171 + ndk-r16b

brew install ninja
cocos compile -p android

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM