【问题标题】:Enable Pretty Printing in KDevelop C++在 KDevelop C++ 中启用漂亮打印
【发布时间】:2014-06-04 06:25:09
【问题描述】:

我已经搜索了很多关于如何在 KDevelop 中启用漂亮打印,但没有希望。

我找到了this 链接并实现了那里提到的内容。然后在“启动器配置”中,我将我的 gdbinit 文件添加为“配置 gdb 脚本”。但是没有效果。

它在旧版本的 KDevelop 中运行良好,无需手动配置,但将我的 Ubuntu 升级到 14.04 并将 KDevelop 升级到 v4.6.0 似乎是一个失误。

任何想法如何在 KDevelop 中启用漂亮的打印?

【问题讨论】:

    标签: c++ gdb pretty-print kdevelop


    【解决方案1】:

    是的,我在使用 Ubuntu 13.10 和 KDevelop 4.5.1 时也遇到了同样的问题。下面,我已经包含了问题和解决方案。

    问题:

    Ubuntu 13.10 使用 GDB 7.61,它读取 Python3 漂亮打印机脚本,但 Ubuntu 13.10 附带了 Python2 漂亮打印机脚本。糟糕!

    解决方案:

    • 首先,确保您的主文件夹中有所需的“.gdbinit”文件——您的超链接引用的那个文件。这将通知 GDB 在哪里寻找 需要 Python3 漂亮的打印机脚本。不用说,您可能必须更新“.gdbinit”中的路径。我的,看起来像这样:

      蟒蛇
      导入系统

      sys.path.insert(0, '/usr/share/kde4/apps/kdevgdb/printers')

      从 qt4 导入 register_qt4_printers
      register_qt4_printers(无)

      从 kde4 导入 register_kde4_printers
      register_kde4_printers(无)

      从 libstdcxx 导入 register_libstdcxx_printers
      register_libstdcxx_printers(无)

      结束

    • 现在,您需要使用“2to3”shell 命令将 Python2 脚本转换为 Python3 脚本。例如:

      2to3 -w /usr/share/kde4/apps/kdevgdb/printers/qt4.py

      2to3 -w /usr/share/kde4/apps/kdevgdb/printers/libstdcxx.py

      我不需要转换 kde4.py 脚本:它已经是 Python3 脚本了。

      注意:为了安全起见,在进行转换之前备份脚本文件——你永远不知道。

    这就是它的全部内容,启动 KDevelop 就可以了……

    实际上,您可以使用 gdb shell 命令来启动 GDB,并确保您的所有 Python 脚本都是版本 3:如果您没有收到任何读取错误,您就知道一切正常。如果它产生读取错误,只需转换这些脚本。

    仅供参考:要退出 GDB,只需输入“quit”并按“Enter”键:(gdb) quit

    附录:

    如果您的系统不包含 libstdcxx.py 文件,您需要执行以下操作:

    【讨论】:

      猜你喜欢
      • 2021-05-18
      • 1970-01-01
      • 2010-09-13
      • 1970-01-01
      • 2013-01-20
      • 2011-05-25
      • 2011-05-27
      • 1970-01-01
      • 2013-04-15
      相关资源
      最近更新 更多