虽然在一个库中组合多个目标文件是司空见惯的,但可以(至少在 Linux 中)将多个目标文件组合成另一个目标文件。
(请参阅将两个 GCC 编译的 .o 目标文件合并到第三个 .o 文件中)
由于使用库而不是仅组合目标文件有缺点:
1:链接时只使用一种类型的文件(对象)更容易,特别是如果所有文件都做同样的事情。
2:链接时(至少在GCC中),库(默认)需要排序,不能处理循环依赖。
我想知道图书馆有什么优势(除了第 22 条它们被大量使用)。
搜索了一段时间后,我得到的唯一解释似乎是单个库比多个目标文件更好。