在Windows系统中应该把.gdbinit文件放在哪里?

9

它应该被称为.gdbinit还是gdb.ini

我想尝试这个文件。

我正在使用使用MinGW的Vectorcast进行测试。我将文件以两个名称(.gdbinitgdb.ini)复制到了Vectorcast目录和它的MinGW bin目录中,其中gdb.exe所在的位置,因为我不确定哪一个是当前工作目录,但是从那个文件中没有看到我期望的任何东西。

那么,我应该把它放在哪里,叫什么名字呢?


你尝试过直接将它命名为.gdbinit并放在Vectorcast/gdb.exe目录中吗? - Arendhal
根据我的问题 - 是的,我做了。 - Mawg says reinstate Monica
你可以将环境变量HOME设置为某个目录吗,以便GDB可以从那里加载$HOME/.gdbinit - Florian Weimer
我没有在运行Linux。我想我可以在Windows上尝试,但是我应该设置HOME还是$HOME - Mawg says reinstate Monica
HOME,这样在GDB中使用getenv("HOME")将返回此路径。 - Florian Weimer
2个回答

10

你应该将它放在你的$HOME目录或当前目录中,请参见如何在gdb启动时加载.gdbinit?

你可以在gdb shell中通过以下方式知道你的主目录:

(gdb) show environment HOME

或者

(gdb) shell echo $HOME

您可以使用以下命令了解当前目录:

(gdb) shell pwd

不,应该命名为.gdbinit

1
唉,这些GDB命令在Windows上都不起作用。但是你注意到了我的问题中有一个糟糕的错别字(为此点赞)。我在问题中使用了.gdbini,而实际上应该是.gdbinit。我已经更新了问题。文件在Vectorcast目录和MinGW bin目录中的命名都正确,在使用我在问题中链接的.gdbinit文件时仍然无法工作,所以我还是卡住了。 - Mawg says reinstate Monica
看起来你将在几天内默认获得赏金,但我仍然无法让它工作。我不在乎赏金,你也不再在乎了,我想象,但你能帮我让它工作吗?谢谢。 - Mawg says reinstate Monica
1
.gdbinit在没有使用Vectorcast的情况下是否加载?我猜值得先让它在没有Vectorcast的情况下加载。尝试将HOME变量设置为%USERPROFILE%,并按照mingw howto中建议的方式将.gdbinit放置在“C:\ Users \ Firstname Lastname”中:http://www.mingw.org/wiki/HOWTO_Set_the_HOME_variable_for_cmd_exe。 - ks1322
好主意。我不介意独立运行GDB,而不是从Vectorcast启动它。我会在周一第一时间尝试。 - Mawg says reinstate Monica
糟糕!由于某种原因,“.gdbinit:1567: Error in sourced command file: Python scripting is not supported in this copy of GDB.”我想我不能使用那个.gdbinit了;也许我会寻找另一个(但我真正需要的是Windows GDB GUI)。感谢您的帮助。 (gdb) - Mawg says reinstate Monica
在Windows中创建HOME变量时,您可能需要重新启动命令提示符才能使其生效。 - AspinBlack

2
在Windows系统上,在c:/users/yourusername路径下创建一个名为任意名称的目录,其中yourusername是你的Windows用户名。(不一定非要在这里,但这个位置比较安全。)
现在从控制面板中调用环境变量对话框,并创建一个名为HOME的新环境变量。通过单击浏览文件夹并导航到该文件夹来将该变量设置为上述文件夹。
.gdbinit文件放在那里,并使用它来设置任何autoload或其他行为。
当GDB启动时,它现在会在该文件夹中查找.gdbinit文件并加载它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接