【发布时间】:2023-03-14 04:44:02
【问题描述】:
我有一个使用 STL、boost 和其他几个库的 C++ Windows 应用程序。 应用程序做的不多,但规模很大。 我必须找到一种方法来减小应用程序的大小,但我不明白这些库的哪一部分会扩大我的应用程序的大小。
(也许我可以切换STL/boost,或者自己实现smth,或者用不同的方式做smth,等等......)
我们是否有任何工具/指南来调查导入的符号并找出哪些符号可以最大程度地增加应用程序的大小?
更新
我问的是发布版本。
我没有询问编译器的配置,但我询问了可以告诉我的代码的哪些部分最大程度地增加了我的应用程序大小的工具。
静态包含所有库。因此,如果我可以删除重量级的依赖项,应用程序的大小会明显变小。
【问题讨论】:
-
在 Unix 上,
nm是一个有用的工具 en.wikipedia.org/wiki/Nm_(Unix) -
@ChrisBeck 谢谢。如果我没有找到适用于 Windows 的东西,我会尝试
nm... -
应用链接的 .lib 文件是否很大?如果是,并且您需要这些库,那么对于大小无能为力。为什么尺寸很重要?
-
@Dialectus 但是如果我知道哪个库极大地增加了应用程序的大小,我可以尝试删除该依赖项......