c++ - 如何减少用 native Visual C++ 编写的大型项目的链接时间?

标签 c++ visual-studio visual-c++

我正在处理大量用 Visual C++ 编写的源代码。目标是 dll 库。链接时间耗费几分钟。如何减少这个时间?

库依赖于同一解决方案中的其他 dll 和库。

可以做的第一件事是将源代码分成几个项目,但这是一种耗时且非常昂贵的方法。

可能存在一些其他方法可用于我的情况。

编辑:我使用增量链接,虽然这大大减少了时间,但这对我来说还不够。 目标文件的大小没有问题,因为最烦人的是开发这样的代码库。每一个小修改都需要等我联动。

最佳答案

重构!!!将大型 DLL 拆分为较小的模块,使用接口(interface)层执行此操作,当您将“大型”DLL 拆分为较小的 DLL 而不是获取前 5 个文件等时创建架构。仔细映射 DLL 层次结构 0 级 DLL 是独立的,级别1 个 DLL 可能依赖于 1 个或多个 0 级等。

这样做的努力会得到返回,假设只有 10 名开发人员每天只等待 6 分钟链接,每周 10*6 == 1 小时 * 5 天,这意味着您每周损失超过半天的开发时间,这应该足以证明中断功能开发以使您的鸭子井井有条。

您还提到了库,如果您也有制作这些 DLL 的源代码,那么当您启用编辑并继续时,这将很快得到返回。

关于c++ - 如何减少用 native Visual C++ 编写的大型项目的链接时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/329007/

相关文章:

visual-studio - VS 2015 调试暂停颜色

visual-studio - 如何创建带有复选框的命令菜单项?

c++ - "Magic static"在另一个翻译单元的静态销毁阶段引用时单例崩溃

C++ 继承类 'Window' : base class undefined

c# - 从工具箱拖动控件时 ControlDesigner 未激活

c++ - clang-tidy 报告未知警告

c++ - 将数据结构传递给不同的线程

c++ - 可选引用实现

c++ - 在字符串 2 中不可靠地找到字符串 1

c++ - 如何检测 std::integer_sequence 中特定数字的索引?