使用Makefile项目在Visual Studio中自定义调试命令

时间:2011-01-08 00:52:04

标签: debugging visual-studio-2010 makefile

我在Visual Studio 2010中有一个基于Makefile的项目(事实上,使用NAnt,但这不是重点)。

构建过程的输出是.elf文件,我有一个单独的非VStudio调试器,可以在该.elf文件上运行来调试它。

构建工作正常,但是当我单击“调试”按钮(小绿色三角形)时,VStudio失败并显示“无法启动程序'XXX.elf'。指定的文件是无法识别或不支持的二进制格式”

我猜VStudio只是试图'运行'.elf,好像它是.exe,并且失败了。

当我按下调试按钮时,我真正希望VStudio做的是运行“my_debugger.exe XXX.elf”。

我尝试使用.elf => my_debugger.exe添加文件关联 我已经适当地更新了PATHEXT,并在这些更改下运行VStudio。 仍然没有运气。

在VStudio中是否存在可以指定自定义调试命令的位置?我以为有,但找不到它。

我可以让构建过程输出一个.bat文件或我猜的东西,但这看起来很傻。

2 个答案:

答案 0 :(得分:1)

正如Jim所说,您可以指定在项目设置中运行的应用程序(命令字段)。如果在那里放置调试器,则可以将可执行文件作为参数传递给正在启动的调试器(命令参数字段)。这样,您可以启动调试器,如果调试器需要任何命令行参数,则调试器将启动您的可执行文件。

MinGW on Windows示例:

  1. 命令: gdb.exe ;命令参数:路径\ ToMyApp \ whatever.exe

    将启动gdb.exe,gdb.exe将打开whatever.exe,解析调试信息并等待调试说明。

  2. 命令: msys.exe ;命令参数: gdb.exe Path \ ToMyApp \ whatever.exe

    将启动msys.exe,msys.exe将执行“gdb.exe Path \ ToMyApp \ whatever.exe”

答案 1 :(得分:0)

查看项目属性。你有一个Debug选项卡,它有一个Start Action部分给出三个选择吗?这些选择是:()启动项目,(x)启动外部程序:...()使用URL启动浏览器。

您还可以设置命令行参数和工作目录。

比照。 How to: Change the Start Action for Application Debugging