我开发的软件使用命令行makefile。我的环境尽可能使用免费工具。如果你问我使用哪个版本的make我会很难指定,因为我已经安装了mingw,cygwin和dev-cpp。但是,我确实知道它是“免费的”,而不是微软,而我目前的路径上的那个是来自dev-cpp目录。无论如何这不是这个问题的关键。
我的代码从SCM中获取,构建,最后exe被放在bin目录中。 我想要一个可以调试此exe的免费全屏图形调试器。我不是在寻找IDE,但可能需要答案安装IDE。我肯定会不考虑从命令行makefile转到IDE等价物。
我已经尝试过使用MSVC,我可以通过在启动后附加到进程来实现它。这不是理想的两个原因:工具必须是免费的,我应该能够从启动时调试它。顺便说一句,我不会考虑MSVS Express。我已经尝试了它并且它一直挂着所以它现在已经卸载好了!
在您的回答中,您可能希望包含说明,因为通常这些内容只有在IDE内部构建程序时才能顺利运行,我不会这样做。 首选答案将指定一个安装占用空间小的工具,也可以在Linux上运行。指定任何先决条件,例如应该使用什么编译器构建代码。当然,如果说明太长,那么你自己安装的列表就是一个帮助。
我肯定会 upvote 一个答案,解释我如何使用Dev-CPP做到这一点,因为我已经安装了它。这并不意味着它将是首选答案。这些是按优先顺序排列的理想方框。
编辑:一些非常好的答案。请说明您勾选的上述哪些方框。
答案 0 :(得分:2)
答案 1 :(得分:1)
安装了工具集后,您应该可以使用gdb
(例如,包含在MinGW中)。它是简约的,但也没有任何真正的ui(只是命令行)。要运行,只需使用可执行文件作为参数调用它:gdb myexe
。传递参数:gdb --args myexe first second third
如果您更喜欢IDE,您几乎可以使用任何IDE并添加makefile项目而不是标准项目。大多数人支持这一点。
对于Windows下的(IMO)最佳/最有效的调试,您仍然需要切换到MSVC。没有办法解决。其他免费的IDE提供类似的东西和功能,但到目前为止,没有人设法得到至少几乎相同。它不应该卡在半合理的现代PC上。可能还有其他一些问题。
答案 2 :(得分:1)
大多数专业Windows开发人员使用WinDBG,这是围绕多个命令行调试程序的UI包装器。它是比MSVC更强大的调试器,因为它可以在用户和内核模式下运行,并且具有灵活的基于命令行的扩展集,可以执行大量自动化任务。这是免费的,就像在啤酒中一样,尽管可能不像在演讲中那样。使用它就像使用gdb一样,尽管UI版本对监视变量,本地,线程,内存等都有很好的可停靠窗口支持。
它可以作为Windows(免费)或Windows SDK ...
的调试工具的一部分答案 3 :(得分:1)
我不确定为什么在进程实际启动之前,MSVC不适合您使用调试器。你尝试过这些步骤了吗?
如果一切顺利,IDE调试器将指向“main”的第一行,您可以继续单步执行代码。它可能会提示您输入源文件的位置。只要告诉它在哪里找到它,它应该找到其他所有东西。
现在从你的帖子的语气,我可以告诉你会欣赏更“低级”的东西。我会建议“windbg”。它也适合你。