为何静态库链接到dll或者exe后,发现最终的dll和exe体积会很小

为何静态库链接到dll或者exe后,发现最终的dll和exe体积会很小

最近在做webrtc相关的工作,webrtc编译出的静态库webrtc.lib,多达200多M,但是链接到具体的dll后,dll的大小只有20多M。

其实静态库相当于obj的集合,里面会包含obj的所有函数,可以用dumpbin /symbols查看导出的函数符号。
在这里插入图片描述

而动态库不需要保留这些符号,用dumpbin /symbols查看最终的dll,也查看不到这些符号,这些符号会占用大量的空间,自然小很多。
动态库里面的函数要能被dumpbin /symbols查到到,需要显式导出。

猜你喜欢

转载自blog.csdn.net/tusong86/article/details/120854134