我有一个包含多个C++项目的Visual Studio 2008解决方案。当我选择Debug配置并分别构建每个项目时,我会在Debug目录中找到每个项目的.pdb文件。但是,当我构建整个解决方案时,我找不到它们。输出文件出现在Debug目录中,但是缺少 .pdb文件。
有任何想法吗?
有任何想法吗?
查看项目属性 > 编译 - 点击高级编译选项,然后会打开一个新窗口,找到生成调试信息,您可以选择无、pdb - 仅或完全 - 如果选择无,则这可能是您没有pdb的原因。
因此,如果您的PDB未显示,请再次检查您的项目是否正在构建(您似乎是这样说的,但为了确保,请删除所有中间和输出文件夹,并再次构建解决方案)。还要检查为每个解决方案配置分配了哪些项目配置。也许您的Debug
解决方案配置实际上引用了一些Release
项目配置(或Debug_but_no_pdb
)。
如果仍然没有帮助,请为构建过程启用详细输出:
工具 > 选项 > 项目和解决方案 > 构建和运行 > MSBuild项目构建输出详细程度:诊断
另外,请仔细检查所有项目依赖项以查找无效引用。
好的,关于你的项目,你在这里没有告诉我们很多。不过,这个参考资料可能会提供一些提示:
http://msdn.microsoft.com/en-us/library/ms241903.aspx
基于此,我注意到由于pdb是用于增量链接的,也许编译器认为它们不需要,因为它正在作为构建的一部分进行最终链接。
此外,由于EXE路径是PDB查找的位置之一...有没有可能它们在该目录中?