这可能是一个常见的问题。事实上,我想我几年前就问过了……但我不记得答案了。
问题是:我有一个由 6 个源文件组成的项目。所有这些都不超过 200 行代码。它使用许多 STL 容器、stdlib.h 和 iostream。现在可执行文件的大小约为 800kb。我想我不应该静态链接库。如何使用 GCC 做到这一点?在 Eclipse CDT 中呢?
编辑: 当我的回答偏离我想要的内容时,我认为需要澄清一下。我想知道的是这么小的程序为什么这么大,和静态库、共享库有什么关系,有什么区别。如果故事太长而无法讲述,请随时指点文档。谢谢
最佳答案
如果你给 g++ 动态库名称,并且不传递 -static
标志,它应该动态链接。
要减小大小,您当然可以剥离
二进制文件,并将-Os
(针对大小进行优化)优化标志传递给g++
.
关于c++ - 尽管项目很小,但 g++ 仍会生成大型二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1819564/