【发布时间】:2010-10-25 14:04:44
【问题描述】:
我正在努力减少大型 Visual C++ 2008 应用程序的构建时间。最严重的瓶颈之一似乎是 PDB 文件的生成:在链接阶段,mspdbsrv.exe 快速消耗可用 RAM,并且构建机器开始不断分页。
我目前的理论是我们的 PDB 文件太大了。但是,我一直无法找到有关 PDB 文件“正常”大小的任何信息。我对我们应用程序中的一个 DLL 进行了一些粗略的测量,如下所示:
- CPP 文件:34.5 MB,90 万行
- 头文件:21 MB,40 万行
- 编译后的 DLL:33 MB(编译后用于调试,而非发布)
- PDB:187 MB
因此,PDB 文件大约是 DLL 大小的 570%。 有大型 Visual C++ 应用程序经验的人能否告诉我这些比率和大小是否有意义? 或者这里有迹象表明我们做错了什么?
(我们应用程序中最大的 PDB 文件目前为 271 MB,而 DLL 为 47.5 MB。不过,源代码大小更难衡量。)
谢谢!
【问题讨论】:
标签: visual-c++