包括在Visual Studio中馆员.pdb文件(Including .pdb files wit

2019-08-06 09:31发布

我有一个项目,其输出是库(.LIB)。 该项目依赖于第三方库(也是.LIB)。 为了避免建立在不必担心这个第三方的依赖我的库顶的项目,我已经使用了馆员把它列入我的(项目属性>库>常规>附加依赖)。

然而,当我建立一个独立的可执行项目可链接到我的图书馆,我收到了一堆的线沿线的警告:

MyProject.lib(someThirdPartyObjectFile.obj):警告LNK4099:PDB 'vc110.pdb' 没有与 'MyProject.lib(someThirdPartyObjectFile.obj)' 或 '\ vc110.pdb' 实测值; 链接对象,如果没有调试信息

这意味着(我认为),我将能够调试属于我的图书馆的任何代码,而不是第三方库。

我怎么可以指示Visual Studio中还包括第三方库的PDB在矿山的内容是什么?

Answer 1:

静态库可能已经被移动,所以编译器无法找到它的符号。 您有几种选择:

  • 改变调试格式/Z7 ,这嵌入了调试信息中的代码(而/Zi/ZI把它在一个单独的文件)。
  • 改变PDB文件的输出配置(VS2005是Settings > C++ > Output Files > Program Database File Name ,很可能在VS2010类似)。

你可以找到更多的信息在这里和这里 。



Answer 2:

转到属性页(按Alt + F7)链接,所有选项,生成调试信息设置为无位置



文章来源: Including .pdb files with librarian in Visual Studio