【发布时间】:2014-08-11 14:43:36
【问题描述】:
我找不到任何食谱/教程如何在调试中构建一个适用于 Android 的 cocos2d-x 3.1 项目以及如何直接在设备上调试它。请指出步骤帮助。
我做了什么,我有什么问题:
cd proj.android-
cocos compile -p android -m debug --ndk-mode NDK_DEBUG=1(使用调试信息构建) -
cocos run -p android -m debug部署在设备上 - 在设备上运行应用程序
cd jnindk-gdb
我得到这个错误:
Nareks-MacBook-Pro:jni Narek$ ndk-gdb
jni/Android.mk:67: *** Android NDK: Aborting. . Stop.
ERROR: The device does not support the application's targetted CPU ABIs!
Device supports: armeabi-v7a armeabi
Package supports: Android NDK:
到Application.mk我已经加了:
APP_ABI := armeabi armeabi-v7a
APP_PLATFORM := android-10
但它没有帮助。我做错了什么?
编辑:添加在项目jni 目录中调用的ndk-build DUMP_APP_ABI 命令的结果:
Nareks-MacBook-Pro:jni Narek$ ndk-build DUMP_APP_ABI
Android NDK: /Users/Narek/NoorGames/Games/test2/proj.android/jni/Android.mk: Cannot find module with tag '.' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
/Users/Narek/NoorGames/Games/test2/proj.android/jni/Android.mk:67: *** Android NDK: Aborting. . Stop.
【问题讨论】:
-
您能检查一下
proj.android\obj\local\armeabi和proj.android\obj\local\armeabi-v7adirectories 中是否有为各个ABI 生成的obj 文件吗? -
@VikasPatidar 在这些目录中我有一些
.a和.so文件 (libcocos2d.a, libcocos2dcpp.so, libbox2d.a) 以及两个目录:objs和objs_debug。在每个目录中,我都有以下目录box2d_static, cocos2dcpp_shared, cocos_extension_static...。在其目录中,有其他目录的目标文件和目标文件。这是正确的吗? -
使用
ndk-build DUMP_APP_ABI找到正确的ABI,然后在Application.mk中更改它同时确保APP_PLATFORM与在设备上运行相同。例如android-10 适用于 Android 2.3.3 是运行设备的版本,然后还更新AndroidManiefest.xml以更正目标和最低版本。将它们设置为android:minSdkVersion="10" android:targetSdkVersion="10"保持相同。我已经在 Eclipse 中尝试使用带有 NDK-r9d 的 cocos2dx 3.0 版本。 -
@VikasPatidar 感谢您的帮助。请在我的编辑问题文本中查看
ndk-build DUMP_APP_ABI的结果。 -
@VikasPatidar 我认为你救了我的命 :) 使用
ndk-build DUMP_APP_ABI后,我看到NDK_MODULE_PATH不见了。我打电话给cocos compile -p android -m debug --ndk-mode NDK_DEBUG=1。此命令显示应设置的NDK_MODULE_PATH。我已将NDK_MODULE_PATH导出为/Users/Narek/NoorGames/Games/test2/proj.android/../cocos2d:/Users/Narek/NoorGames/Games/test2/proj.android/../cocos2d/cocos:/Users/Narek/NoorGames/Games/test2/proj.android/../cocos2d/external,它解决了问题。
标签: c++ cocos2d-x cocos2d-x-3.0