首页  >  文章  >  后端开发  >  如何在 Eclipse CDT 中为 C STL 对象启用 GDB 漂亮打印?

如何在 Eclipse CDT 中为 C STL 对象启用 GDB 漂亮打印?

DDD
DDD原创
2024-10-30 02:52:29708浏览

How to Enable GDB Pretty Printing for C   STL Objects in Eclipse CDT?

在 Eclipse CDT 中为 C STL 对象启用 GDB 漂亮打印

当默认 GDB 输出为不容易解释。启用漂亮打印通过提供更用户友好的 STL 数据结构表示来解决此问题。

先决条件

  • 使用 Python 脚本安装最新版本的 GDB支持。
  • 通过从 GCC SVN 存储库中查看“libstdcxx-v3/python”目录来获取 Python 漂亮打印机。

设置漂亮打印

  1. 配置GDBinit文件:在项目目录下创建.gdbinit文件,并添加以下内容:

    <code class="python">import sys
    sys.path.insert(0, '/home/<path_to_pretty_printers>')
    from libstdcxx.v6.printers import register_libstdcxx_printers
    register_libstdcxx_printers(None)</code>
  2. 在 Eclipse CDT 中启用漂亮打印:在 Eclipse 中,导航到 Window ->;首选项-> C/C->调试-> GDB。

    • 设置 GDB 和 .gdbinit 文件的路径。
    • 启用“漂亮打印”选项。
  3. 其他 GDB 命令:要进一步自定义,请在 GDB 中执行以下命令:

    set print pretty on
    set print object on
    set print static-members on
    set print vtbl on
    set print demangle on
    set demangle-style gnu-v3
    set print sevenbit-strings off

其他提示

  • 对于较旧的项目,请确保源代码至少使用 GCC 4.9 或更高版本编译,以支持所需的 Python 模块。
  • 如果遇到 Python 模块导入错误,请确保 gdbinit 中的模块路径文件正确并且模块安装在指定位置。

以上是如何在 Eclipse CDT 中为 C STL 对象启用 GDB 漂亮打印?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn