首页 > 解决方案 > 在 Visual Studio 2019 中,是否可以将行号嵌入到 .obj 文件中?

问题描述

VS2019 的 MS 文档说:

“/Z7 选项生成的目标文件还包含完整的符号调试信息以供调试器使用。这些目标文件和构建的可执行文件可能比没有调试信息的文件大得多。符号调试信息包括名称和类型变量,以及函数和行号。不生成 PDB 文件。”

我记得 VS2015 和 VS2017 的文档说 /Z7 已被弃用,但 VS2019 似乎已经恢复了它。

但是,以下命令行(也没有我尝试过的许多变体中的任何一个)都没有创建带有嵌入行号的 obj 。此外,与文档相反,第一行创建了一个 PDB。

“cl -nologo -Z7 -Od -FoC:\Temp\FX2E070.obj -GS- -LD C:\Temp\FX2E070.c”

“cl -c -nologo -Z7 -Od -FoC:\Temp\FX2E070.obj -GS-C:\Temp\FX2E070.c”

我真的需要我的 obj 中的那些行号。你能提供的任何帮助都会很好。

谢谢!

标签: debuggingvisual-studio-2019

解决方案


在 Visual Studio 2019 中,是否可以将行号嵌入到 .obj 文件中?

Viual Studio 2019中,您确实需要在Properties中编写该命令行。有一个选项可以启用C7 compatible(/Z7)。你可以检查这个文件

解决方案

1)右键单击​​您的项目--> Proeprties--> Configuration Properties--> C/C++--> General--> 设置Debug Information formatC7 compatible(/Z7).

在此处输入图像描述

2)不要忘记点击Apply启动它。


推荐阅读