我在我的应用程序中使用了相当复杂的数据结构(主要使用 STL 容器),并使用 Boost (v1.34) 对它们进行序列化。
每当我使用调试符号 (gcc -g) 进行编译时,生成的可执行文件都会变得很大——大约 25 MB。剥离所有调试符号会将大小减小到 ~3 MB。
我试图确定大小增加的原因,似乎序列化方法是原因。特别是,调用序列化的模块的目标文件(如“oarchive << myObject”之类的代码)很大,注释掉序列化部分会显着减小大小。
是否可以阻止这些符号的生成,或者有选择地去除它们?
剥离所有符号不是一种选择,因为我需要为自己的代码调试符号。