如何在不使用太多内存的情况下 link 大量 C++ 目标文件?

How to link a lot of C++ object files without using too much memory?

我正在编写一个在内部使用大量数据的 C++ 程序。这些数据分布在大约 5000 个源代码文件中。当我 运行 make 时,所有这些文件都可以完美地编译为目标代码。但是,当我想 link 将所有内容合并为一个可执行文件时,我的计算机 运行 内存不足。

非常感谢任何提示。

将您的代码编译成静态库。然后针对库进行编译,该库应仅包含最终可执行文件中所需的内容。

如果您使用的是 GCC,请查看 AR 选项。静态库是一个存档,您可以根据需要组合和提取它。