我希望扩展一下有关Windows 7的回应,因为其中有些关键步骤被省略了:
这是针对使用Eclipse CDT的MinGW用户
0)如果你没有Python GDB,请打开一个shell/command窗口并使用MinGW-get.exe来“安装”启用Python的GDB,例如:
MinGw-get.exe install gdb-python
1a) 从http://python.org/download/下载并安装Python 2.7.x。
1b) 确保在您的环境变量中设置了PYTHONPATH和PYTHONHOME。
PYTHONPATH should be C:\Python27\Lib (or similar)
PYTHONHOME should be C:\Python27
1c) 将PYTHONHOME添加到您的PATH环境变量中
%PYTHONHOME%;...
2a) 打开文本输入框,输入以下语句。注意第三行指向Python脚本所在的位置。有关此内容的注释,请参见下面的说明!
python
import sys
sys.path.insert(0, 'C:/MinGW/share/gcc-4.6.1/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers (None)
end
2b) 将它保存为“.gdbinit”注意:Windows资源管理器不允许以点开头的文件名。大多数文本编辑器(包括记事本)都可以。GDB init文件就像是一些GDB命令的‘脚本',GDB将在加载时执行它们。
2c) '.gdbinit'文件需要位于GDB的工作目录中(很可能是您的项目根目录,但您的IDE可以告诉您)。
3) 打开Eclipse(或其他IDE)首选项对话框。转到C++调试器子菜单。
4) 配置Eclipse使用C:\MinGW\bin\gdb-python27.exe
作为调试器和.gdbinit
作为配置文件。
5a) 重新创建所有调试启动配置(删除旧的,并从头开始创建一个新的)。
--OR--
5b) 编辑每个调试配置并将其指向新的gdb-python.exe,同时指向它。
如果遇到问题:
--不要忘记在上面的python代码中更改位置以指向python目录!
这个目录是由MinGW创建的,所以不要去下载漂亮的打印机,MinGW已经为您在步骤零中完成了。只需转到您的MinGW安装目录,共享文件夹,
GCC文件夹(有版本号),您会找到python文件夹。这个位置应该在由GDB加载的python脚本中。
--此外,.gdbinit很让人头疼,请确保它的名称正确,并位于GDB的工作文件夹中,
这不一定是gdb-python.exe所在的位置!观察加载GDB时的GDB输出,看看是否出现“python-enabled”,以及.gdbinit中的语句是否出现。
--最后,我在系统变量方面遇到了很多问题。如果python给出“ImportError”,那么很可能您没有设置PYTHONPATH或PYTHONHOME。
--具有“gdb-python27”(例如C:\ MinGW \ bin')的目录也应该在您的路径中,如果是这样,它会使设置eclipse变得更加轻松,因为您不需要输入绝对路径。但是,有时.gbdinit需要绝对路径。如果它可以工作,您将在调试器启动时看到gbd(控制台-> gdb跟踪)的输出,如下所示:
835,059 4^done
835,059 (gdb)
835,059 5-enable-pretty-printing
835,069 5^done
....
835,129 12^done
835,129 (gdb)
835,129 13source C:\MinGW\bin\.gdbinit
835,139 &"source C:\\MinGW\\bin\\.gdbinit\n"
835,142 13^done
835,142 (gdb)