c++ - MSVC 2005 链接器内存消耗问题

标签 c++ c visual-studio

我有一个不寻常的问题。在我工作的公司,我们的代码库中有很多源代码,而且我们使用了很多第 3 方库。我们使用的是 MSVC 2005。

问题是链接我们的可执行文件非常耗时(几分钟)。此外,链接器的内存使用量达到 1.7 GB,而最终的可执行文件“仅”为 22 MB。

我们不使用/ltcg(链接时代码生成)选项。

我想链接器会立即加载所有依赖项的所有 OBJ 和 LIB。但是 OTOH 这实际上不是必需的:可以首先加载所有原始符号(没有相应的代码),构建依赖关系树。然后,使用这棵树,只加载相关的代码片段。

有人知道链接器行为是否可以更改吗?也许存在相应的链接器选项。 这在 MSVC 2008/2010 中已修复吗?

谢谢

最佳答案

我同意说要使用 DLL 的评论。长期以来困扰 Windows 的 DLL 版本问题,IMO,通过 Side by Side 汇编系统得到了解决。

如果它在 Visual Studio 2005 中可用,请尝试启用增量链接。

关于c++ - MSVC 2005 链接器内存消耗问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4077532/

相关文章:

c++ - *this 和 const 成员函数

c++ - 为什么 std::rel_ops::operators 在 C++20 中会被弃用?

c - ** 检测到 glibc *** free() : invalid pointer: 0x0000000000400b2c

linux - 无法使用 CLI 将 Azure Function 发布到 Linux

c# - 如何使用 c#.net 在电子邮件中将 Html 输入文件值作为附件发送

c# - 如何在 Sharepoint 2010 项目中找到根站点 URL?

c++ - double = 安全 vector 的 C++ vector 赋值?

C++ 模板和继承

c - 具有特殊按位运算的宏的目的是什么?

c++ - 如何在Linux中实现绕行功能