VS2013 C ++:慢速链接过程

时间:2014-09-11 14:31:26

标签: visual-studio-2013 msbuild linker build-process pdb-files

您是否曾经历过C ++项目编译中的慢速链接过程(我使用的是VS2013)?我在5分钟Build之后花了15分钟获得链接过程。重建或Visual Studio重新启动不能解决问题。 任务管理器显示mspdbsrv.exe占用一个完整的核心(4核上25%),并且pdb文件创建非常慢,Kb后Kb达到50 Mb。 其他信息:

  • 另一台计算机上的同一项目在可接受的时间内构建和链接。
  • 禁用防病毒软件
  • 我尝试更改pdb文件创建位置:无效
  • 我已将链接器输出设置为Verbose,但它会在一个调试行停止,然后一直等待。
  • VS2013更新为SP4
  • 笔记本电脑上的硬盘活动大部分已关闭,因此磁盘上没有完整的活动。
  • 我正在运行Windows 7专业版。
  • 以管理员权限运行VS2013

谢谢。

2 个答案:

答案 0 :(得分:5)

修正了更改"调试信息格式"从/ ZI(编辑并继续功能)到/ Zi。我仍然不知道为什么这会导致仅在特定计算机上而不是其他计算机上的慢速链接。希望这可以帮助人们来这里解决同样的问题。

答案 1 :(得分:4)

是否使用链接时代码生成?在VS2010上,该步骤是单线程的,因此它比明显的编译步骤花费更长的时间。根据博客文章,在更高版本中,这一步被改进为多线程。它还提到PDB访问是一个瓶颈。那么,也许你在该系统上有一个 mspdbsrv.exe?查看文件的版本信息,比较各台机器。可能还有一些选项来控制其锁定和多用途行为,隐藏在某个地方。