如何解决Visual Studio 2019调试嵌入式目标如何强制VS不将其视为Windows可执行文件
我正在尝试在VS 2019中设置Cmake ARM uC(STM32)嵌入式项目。
项目正常,但是我很难启动调试会话。
我修改了launch.vs.json
{
"version": "0.2.1","defaults": {},"configurations": [
{
"type": "cppdbg","name": "GCEC-FW.elf","project": "out\\build\\IoT-Debug\\GCEC-FW.elf","projectTarget": "","cwd": "${workspaceRoot}","program": "${workspaceRoot}\\BUILD\\${workspaceRootFolderName}.elf","MIMode": "gdb","externalConsole": true,"inheritEnvironments": [
"gcc_arm"
],"miDebuggerPath": "${env.gccpath}\\bin\\arm-none-eabi-gdb.exe","setupCommands": [
{
"text": "-environment-cd ${workspaceRoot}/BUILD"
},{
"text": "-file-exec-and-symbols ${workspaceRootFolderName}.elf","description": "load file","ignoreFailures": false
},{
"text": "-enable-pretty-printing","ignoreFailures": true
}
],"visualizerFile": "${debugInfo.linuxNatvisPath}","showDisplayString": true,"miDebuggerServerAddress": "localhost:3333","launchCompleteCommand": "None","debugServerPath": "C:\\Program Files (x86)\Atollic\\TrueSTUDIO for STM32 9.3.0\\Servers\\J-Link_gdbserver\\JLinkGDBServerCL.exe","debugServerArgs": "-port 2331 -s -CPU Cortex-M -device STM32F427II -endian little -speed 4000 -vd -swoport 2332","serverStarted": "GDB\\ server\\ started","filterStderr": true,"filterStdout": true
}
]
}
但是,当我尝试启动调试会话时,出现错误,指出我的.elf
文件不是Win32可执行文件(实际上是正确的-不是)。
问题是:VS要开始此会话需要做什么?
编辑
添加新的微控制器调试配置时,我需要更改名称。 “名称”:“ GCEC-FW.elf”
现在,它抱怨到gdb的路径。
新问题是:我可以在VisualStudio中输出还是查看构建变量-如
${workspaceRootFolderName}
或${env.gccpath}
解决方法
关于“ ...我是否可以在Visual Studio中输出或查看构建变量-如: ${workspaceRootFolderName} or ${env.gccpath}
要在属性中显示所有当前可用的宏 页面对话框,在VC ++目录下,选择位于以下位置的下拉箭头 属性行的末尾。单击编辑,然后在编辑对话框中 框,选择宏按钮。当前的属性集和 列出了Visual Studio可见的宏以及当前值 每个。有关更多信息,请参见指定用户定义的值。 C ++项目属性页参考部分。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。