6.60. 关于调试符号

大多数程序和库在默认情况下编译时都包含调试符号(使用 gcc-g 选项)。 这意味着当调试包含调试信息的程序或库时,调试器不仅可以提供内存地址,还可以提供例程和变量的名称。

然而,包含这些调试符号会显著扩大程序或库的大小。 以下是这些符号占用空间大小的示例:

大小可能因使用的编译器和 C 库而异,但当比较带有和不带调试符号的程序时,差异通常在两到五倍之间。

因为大多数用户永远不会在其系统软件上使用调试器,所以通过删除这些符号可以回收大量磁盘空间。 下一节介绍如何从程序和库中剥离所有调试符号。 有关系统优化的更多信息,请访问 http://www.linuxfromscratch.org/hints/downloads/files/optimization.txt