【发布时间】:2018-01-07 13:01:53
【问题描述】:
我的程序遇到了 Heisenbug,this post 建议我在 GDB 中执行命令 set disable-randomization off。但是,我不知道如何在 CLion 中执行 GDB 命令以及何时执行。当我尝试复制粘贴我的命令时,调试中的 GDB 选项卡仍然不可编辑。
如何执行我的命令?我需要在没有 CLion 的情况下进行调试吗?
【问题讨论】:
-
我建议从命令行学习使用 GDB。 GDB 非常古老,几乎无处不在,很像 vi/vim。它最初只是一个命令行工具,所有图形前端和 IDE 集成都是后来出现的。 CLion 中阻止您直接发出 GDB 命令的任何内容都不太可能影响您在命令行界面中发出这些命令的能力。
-
不幸的是,在启动调试器之前无法执行自定义 GDB 命令。作为一种解决方法,您可以将此命令添加到您的
~/.gdbinit文件中。 -
@EldarAbusalimov 创建了文件并添加了命令,但没有任何改变。如何检查 gdb 是否已成功执行我的命令?
-
@Winter 启动调试会话后,暂停执行以使 GDB 控制台视图变为可编辑,并在那里执行“show disable-randomization”。它应该报告
off,如果一切顺利并且GDB读取~/.gdbinit。