c – 如何在android设备上调试cocos2d-x 3本机代码
我找不到任何菜谱/教程如何构建在调试中为
Android构建一个cocos2d-x 3.1项目,以及如何直接在设备上进行调试.请指出步骤请帮忙.
我做什么和我有什么问题: > cd proj.android 我得到这个错误: 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 但它没有帮助.我做错了什么 编辑:添加ndk-build的结果DUMP_APP_ABI命令在项目中调用jni目录: 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. 解决方法
以下是在Android设备上调试cocos2d-x 3.x的逐步教程.如果您以更好的方式进行操作,请更正或优化我的步骤.
> cd proj.android 如果它工作,那么恭喜!但在这一步您可能会看到这样的错误信息: Nareks-MacBook-Pro:proj.android 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: 别担心:)让我们看看有什么问题: >这里是在项目的jni目录中调用的ndk-build DUMP_APP_ABI命令的结果: Nareks-MacBook-Pro:jni Narek $ndk-build DUMP_APP_ABI 可以看到NDK_MODULE_PATH丢失了.为了获得该值,请执行以下操作.转到编译代码的步骤.在执行命令cocos的第一个linse中编译-p android -m debug –ndk-mode NDK_DEBUG = 1,你可以看到这样的东西: Runing command: compile Building mode: debug building native NDK build mode: NDK_DEBUG=1 The Selected NDK toolchain version was 4.8 ! running: '/Users/Narek/NoorGames/android-ndk-r9d/ndk-build -C /Users/Narek/NoorGames/Games/test2/proj.android -j1 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' >从上面的日志复制你看到NDK_MODULE_PATH的必要值.执行以下命令export NDK_MODULE_PATH = / Users / Narek / NoorGames / Games / test2 / proj.android /../ cocos2d:/Users/Narek/NoorGames/Games/test2/proj.android /../ cocos2d / cocos:/用户/ Narek / NoorGames /游戏/ test2 / proj.android /../ cocos2d / external(请注意复制您的路径不是我的) 而已.现在在设备上运行游戏,cd proj.android,调用ndk-gdb,你应该能够使用gdb进行调试. 我亲自找了这种教程已经20多天了.我希望你喜欢你的调试. :)感谢您@VikasPatidar的帮助与ndk-build DUMP_APP_ABI步骤! EDIT1:作为评论的Vikas,您可以在Android.mk文件中添加NDK_MODULE_PATH,如下所示: NDK_MODULE_PATH := $(LOCAL_PATH)/../../../../cocos NDK_MODULE_PATH += $(LOCAL_PATH)/../../../../external EDIT2:如果您的应用程序在这里崩溃是一个非常强大和容易的方法来通过防止直接调试来调查问题: adb logcat | $NDK_ROOT/ndk-stack -sym $PROJECT_PATH/obj/local/armeabi 它打印崩溃转储. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |