ChatGDB
在GDB/LLDB调试器内部利用ChatGPT的强大功能!
ChatGDB是一个工具,旨在通过GDB或LLDB(编译语言的调试器)增强你的调试体验。利用ChatGPT的强大功能在使用GDB/LLDB时为你提供帮助,从而加速你的调试工作流程!
它允许你用自然语言解释你想做什么,然后自动执行相关命令。你还可以选择让ChatGPT解释它刚刚运行的命令,甚至可以提出任何问题让它回答。专注于重要的事情 - 找出那个讨厌的bug,而不是费力回想GDB/LLDB的命令。
目录
安装说明
首先,确保安装了pip。ChatGDB还需要Python 3.3或更高版本。
安装时,运行以下命令:
pip3 install chatgdb
这将创建一个名为chatgdb
的可执行文件,你需要用它来设置API密钥。
为此,运行以下命令:
chatgdb -k <API密钥>
你可以设置要使用的模型。有两个可选项,gpt-3.5-turbo
和gpt-4
(默认为前者):
chatgdb -m <模型>
如果你使用的是非官方API提供商,还可以设置API URL:
chatgdb -u <api-url>
这些信息以文本形式存储在与安装脚本相同的目录中,目前位于Python site-packages文件夹中,与主脚本一起。你可以通过在终端中运行以下命令轻松找到此位置:
python -m site --user-site
你也可以选择从发布页面下载压缩文件,直接获取脚本。
如果这样做,请导航到chatgdb
文件夹,然后使用以下命令安装:
pip3 install .
更新
要更新ChatGDB,请运行以下命令:
pip3 install chatgdb --upgrade
使用
对于GDB使用,我首先建议编辑你的$HOME/.gdbinit
,以在启动时自动加载主脚本。运行以下命令:
echo "source $(python -m site --user-site)/chatgdb/gdb.py" > $HOME/.gdbinit
LLDB同理。编辑你的$HOME/.lldbinit
并运行以下命令:
echo "command script import $(python -m site --user-site)/chatgdb/lldb.py" > $HOME/.lldbinit
在调试器内,你可以运行chat命令后跟你的查询,例如chat list all breakpoints that I created
。
还有一个名为explain
的命令,你可以不带参数使用它来解释刚刚运行的命令,
也可以选择带上查询来直接向GPT提问。例如,在运行break 7
之后直接运行explain
会提示工具解释断点如何工作。运行explain how input formatting works in gdb
会提示它解释输入格式化(参见顶部图片)。
运行chat help以打印出如何使用该工具的简短教程。
贡献
感谢你对为ChatGDB做出贡献的兴趣!查看CONTRIBUTING.md了解如何 帮助开发工作。
保持更新
如果你想及时了解新功能/修复,请关注我的Twitter。未来还有许多 令人兴奋的功能,如完整的上下文感知,这将使ChatGDB不仅能帮助你使用GDB, 还能帮助你修复代码本身。