我为我的用户定义的 C++ 类编写了一些 GDB 漂亮的打印机,它们按预期工作。
我的 IDE 是 CLion,问题是我必须在第一次调试会话时从 gdb 中手动运行“source PrettyPrinters.py”。
如何让 CLion 自动加载这些文件?
我知道有一个名为 .gdbinit 的文件。我尝试将我的 python 脚本放入此文件中。我还尝试将“source PrettyPrinters.py”放入此文件中,但这些尝试都没有成功。
注意,我使用的是 CLion 附带的 GDB 捆绑版本。
回答我自己的问题:
打开文件“~/.config/gdb/gdbinit”,或者创建它(如果它不存在)。将命令“add-auto-load-safe-path project-root/.gdbinit”添加到此文件中。
GDB 现在应该在下一次调试会话时自动加载漂亮的打印机(您不需要重新启动 clion)。
@Michelle 感谢分享。但我没有成功。需要捆绑gdb还是可以使用系统的gdb?
我正在尝试使Qt类型打印得漂亮。从here获取漂亮的打印机脚本。我将此文件夹放在
/home/andrey/kde6/src/kde-dev-scripts/gdb/
中。
我的项目根目录是
/home/andrey/kde6/src/ark/
。
在
/home/andrey/kde6/src/ark/.gdbinit
中我输入:
source /home/andrey/kde6/src/kde-dev-scripts/gdb/load-qt5printers.py
在我的
/home/andrey/.config/gdb/gdbinit
中我写道:
add-auto-load-safe-path /home/andrey/kde6/src/ark/.gdbinit
现在,当我开始在 CLion 中调试时,我看不到漂亮的打印类型。我做错了什么?
有没有办法检查你的漂亮打印机是否确实已加载?我想确定这一点,这样如果问题仍然存在,则意味着它可能在脚本本身中。