1

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

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

  1. 从下载的 GNU gdbftp://ftp.gnu.org/gnu/gdb/gdb-7.6.tar.gz

  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.
    
4

1 回答 1

0

我在 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 会话中启动并运行。

希望这可以帮助。问候

于 2013-11-21T21:22:22.577 回答