【发布时间】:2023-03-13 14:52:01
【问题描述】:
我正在从我的源代码构建一个库,其中包含头文件 (.hpp) 和源 (.cpp) 文件。我有一个 make 文件,它将所有源文件分别编译到相应的目标文件中,然后是一个库创建 (ar rcs ..) 语句,它结合了所有 *.o 文件并从中构建一个静态库。生成的库文件很大(大约 17 Mb)。相反,当我执行 g++ -o a.out *.cpp 时,输出文件的大小为 1.4 Mb。归档器命令 (ar rcs) 是否没有从所有单个目标文件中删除冗余信息?我还创建了共享对象,它们也很小,但我需要一个静态库文件来实现我的目的
【问题讨论】: