我有一个由许多静态库和独立 cpp 文件构建的大型二进制文件。它被配置为使用增量链接,所有优化都被禁用/Od
- 它是调试版本。
我注意到,如果我更改任何独立的 cpp 文件,那么增量链接运行速度很快 - 1 分钟。但是,如果我更改任何静态库中的任何 cpp,那么它会运行很长时间 - 10 分钟,与普通链接相同。在这种情况下,我没有从增量链接中获得任何好处。有没有可能加快速度?我用的是VS2005。
我有一个由许多静态库和独立 cpp 文件构建的大型二进制文件。它被配置为使用增量链接,所有优化都被禁用/Od
- 它是调试版本。
我注意到,如果我更改任何独立的 cpp 文件,那么增量链接运行速度很快 - 1 分钟。但是,如果我更改任何静态库中的任何 cpp,那么它会运行很长时间 - 10 分钟,与普通链接相同。在这种情况下,我没有从增量链接中获得任何好处。有没有可能加快速度?我用的是VS2005。
在项目的“链接器常规”属性页中设置“使用库依赖输入”。这将从依赖项 .lib 而不是 .lib 链接各个 .obj 文件,这可能会产生一些不同的副作用。
我会给你一个不同类型的答案。硬件。
你的开发环境是什么?有没有办法获得更多的 RAM 或将您的项目放到固态驱动器上?我发现使用 SSD 将我的工作项目的链接时间加快了一个数量级。对编译时间有一点帮助,但链接很大。当然,获得更快的系统也有帮助。
如果我理解正确(在使用 Visual Stuio 几年之后),增量链接功能不适用于作为静态库一部分的目标文件。
解决此问题的一种方法是重构您的解决方案,以便您的应用程序项目包含所有源文件。