gpt4 book ai didi

c++ - 在 Visual Studio 10 中带有库的 PDB 文件

转载 作者:IT老高 更新时间:2023-10-28 21:43:54 30 4
gpt4 key购买 nike

在 MS Visual Studio 10 中使用调试信息构建静态库 (.LIB) 时,.PDB 始终命名为 vc100.pdb.
(而不是构建一个 .DLL,其中调试信息是 [MyProjectName].pdb)

这对我来说是个问题,因为我试图将几个不同的库(及其调试符号)复制到 "PublishedLibraries" 的目录中,但所有 vc100.pdb 名称显然会发生冲突。

我确信我可以更改每个 .PDB 的名称以匹配其 .LIB,但对我来说更大的问题是 为什么 Visual Studio 是否认为 vc100.pdbprojectA.pdb 更好??
我们打算如何使用来自多个库的调试信息(如果全部)名称冲突?

最佳答案

如果您使用/Z7(而不是/ZI 或/Zi)[在 UI C/C++ -> 常规 -> 调试信息格式中],则调试信息嵌入在 lib 文件本身中,而不是单独的 pdb ,这意味着您不必担心同名。

当您构建最终的可执行文件(.exe 或 .dll)时,您将从所有小型嵌入式 pdb 中获得一个合并的 pdb。

this question了解更多信息

这是我一直在团队中处理此问题的方式,因为您不会在构建过程中丢失调试信息。它使库有些膨胀[但总共不超过同时拥有 lib 和 pdb],但由于您可能不发布库,因此您不必为此担心太多。

关于c++ - 在 Visual Studio 10 中带有库的 PDB 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17052406/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com