【问题标题】:How are you debugging C++ for Android NDK?您如何为 Android NDK 调试 C++?
【发布时间】:2011-10-12 23:46:01
【问题描述】:

在 Android 上调试本机代码的选项有哪些? gdb 是唯一可用的调试器吗?他们是 Visual Studio 集成吗?

我查看了 Android 文档并进行了 googlesing,但我不确定我是否找到了正确的答案。希望一些 SO 专业人士能帮我免去反复试验的痛苦。

但如果我的选择是 gdb 或 printf,我将改用 Mono for Android!

解决方案! WinGDB 适用于 Android。使用 Visual Studio 进行调试!

【问题讨论】:

    标签: c++ debugging android-ndk


    【解决方案1】:

    我找到了这些宏定义,但除此之外我不能说。

    #include <android/log.h>
    
    #define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, "libnav",
    __VA_ARGS__)
    #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG  , "libnav",
    __VA_ARGS__)
    #define LOGI(...) __android_log_print(ANDROID_LOG_INFO   , "libnav",
    __VA_ARGS__)
    #define LOGW(...) __android_log_print(ANDROID_LOG_WARN   , "libnav",
    __VA_ARGS__)
    #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR  , "libnav",
    __VA_ARGS__)
    
    #endif // ANDROID_ALOG_H 
    

    更新

    显然,您可以使用 DDD 作为 Eclipse 的插件,如在 Code Maemo 上找到的那样

    或者在Cygwin下运行,你会在Debugging Android NDK, under windows找到一些有用的链接

    另外还有一些非常有用的插件

    CDT plugin for eclipse

    Sequoya plugin

    栈的安装和配置详见How-to debug native code with Android

    【讨论】:

    • 我正在寻找关于 gdb 是否是本机代码的唯一调试器的明确答案。对不起,我原来的帖子不是很清楚。谢谢梅林。
    • 我提供了更多信息,但看起来一切都以 gdb 为中心
    • 我的理解是gdb是支持的调试器。但是我发现的所有教程要么已经过时,要么就是完全错误的。我还没有看到适用于 NDK r5b 和当前 Eclipse 的教程。
    【解决方案2】:

    我自己还没有尝试过,但是blog post 解释了如何在 Visual Studio 中进行 NDK 调试。

    另外,我在工作中对 NDK 调试做了很多研究,但我没有看到提到使用 gdb 以外的调试器(但请不要把这当成事实,这只是来自我的经验)。我已经成功地通过 Eclipse 调试了 NDK,所以至少你知道这是可能的!如果您决定走这条路,我可以为您提供一些链接/文档来帮助您入门。


    编辑:终于找到了格式化和上传我的 NDK 调试文档的时间。现在(在格式等方面)并不令人惊讶,但它对所有平台上的一些人都有效。你可以找到它here。我希望它有帮助!

    【讨论】:

    • +1,但您能否发布您提到的链接/文档,以便其他人阅读这篇文章:)
    • 抱歉这么晚才回复 - 我一直很忙。是的,当然,我会在周末在这里发布东西:)
    • @Merlin 我不知道你是否收到我的编辑通知,所以我在这里发表评论是为了让你知道我已链接到该指南。抱歉花了这么长时间,希望对您有所帮助。
    • 链接(您可以在“这里”找到它)已失效
    【解决方案3】:

    为了进一步参考,我喜欢这个解决方案,它展示了如何使用 gdb 的图形衍生品,例如 cgdb (http://cgdb.github.com/) 和 ddd (http://www.gnu.org/software /ddd/): http://mhandroid.wordpress.com/2011/01/23/using-cgdb-with-ndk-debug-and-cgdb-tutorial/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-08
      • 2014-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多