1

我们有一个大项目,最近我们出于某种原因将两个 dll 合并为一个。然后我们在链接时收到错误 LNK1318,并且 mspdbsrv.exe 达到 4063MB 的最大内存使用量,然后链接器报告致命错误 LNK1318 Unexpected PDB Error, OK(0)

4

1 回答 1

1

mspdbsrv.exe 是在后台启动的实用程序,用于创建用于调试代码的 PDB 符号。

我已经阅读过有关 Visual Studio 早期版本(例如,2005)的轶事报告,在过去,这个小过程一直是痛苦的根源,但我在 2010 年的日常开发工作中没有遇到任何问题。

在我看来,您已经建立了 PDB 文件的缓存,它试图在构建时将其合并为一个。唯一的问题是,这会生成一个 4 GB (!!) 大小的文件。我会删除与您的项目关联的所有临时文件并终止 mspdbsrv.exe 进程(或重新启动计算机),然后再次尝试构建。您可能还想关闭增量构建,它只重建自上次构建以来已更改的信息。这将强制进行完全重建,这应该会生成一个没有任何额外膨胀的 PDB 文件。

于 2012-08-02T06:13:34.020 回答