漂亮的打印机,用于在Mac OS中使用Eclipse/CDT调试C++代码

Pretty Printers for debugging C++ code with Eclipse/CDT in Mac OS

本文关键字:Eclipse CDT 调试 代码 C++ 打印机 用于 OS Mac 漂亮      更新时间:2023-10-16

我正在尝试完成漂亮的打印机(用于查看类型向量,列表等,STL容器的变量),以便在Mac OSX Mountain Lion中使用Eclipse(版本:开普勒服务版本1)和CDT进行调试C++。我知道我可以使用XCODE进行调试,但想使用Eclipse进行调试。我很感激任何帮助。谢谢。

我尝试了以下方法,但调试失败:

  1. ftp://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.gz下载了 GNU gdb

  2. 通过以下方式使用 python 安装 GNU GDB

    ./configure --prefix=/usr/local/gdb7.6 --with-python=/usr/bin/python
    make 
    make install
    
  3. 已将最新的 Python libstdc++ 打印机签出到文件夹 ~/gdb_printers

    svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python
    
  4. 创建了 ~/gdb_printers/.gdbinit 并在 .gdbinit 文件中添加了以下内容

    python
    import sys
    sys.path.insert(0, '/Users/ravi/gdb_printers/python')
    from libstdcxx.v6.printers import register_libstdcxx_printers
    register_libstdcxx_printers (None)
    end
    
  5. 日食设置

在 Windows> 首选项> C/C++> 中调试> GDB

它说 GDB 调试器/usr/local/gdb7.6/bin/gdb的地方

它说 GDB 命令文件的地方:/Users/ravi/gdb_printers/.gdbinit

  1. 现在,当我尝试调试时,出现以下错误。

    Error in final launch sequence
        Failed to execute MI command:
        source /Users/ravi/gdb_printers/.gdbinit
    Error message from debugger back end:
    /Users/ravi/gdb_printers/.gdbinit:6: Error in sourced command file:nError while executing Python code.
    /Users/ravi/gdb_printers/.gdbinit:6: Error in sourced command file:nError while executing Python code.
    

我在 Ubuntu 13.10 上使用 Eclipse 4.3 时遇到了同样的问题。

我正在使用软件包libstdc++6-4.8-gdb中提供的小打印机,以便在/usr/share/gcc-4.8/python上安装文件

为了修复您收到的相同消息,我查看了 printers.py 中的代码。碰巧问题是由于代码

raise ValueError, "..."

应该写

raise ValueError("...")

我不懂Python编程,但是谷歌搜索让我尝试这个。它似乎有效。漂亮的打印机在我的 Eclipse 会话中启动并运行。

希望这有帮助。问候