|
@@ -10,13 +10,13 @@
|
|
|
|
|
|
<title>关于调试符号</title>
|
|
|
|
|
|
- <para>许多程序和库在默认情况下被编译为带有调试符号
|
|
|
+ <para>许多程序和库在默认情况下被编译为带有调试符号的二进制文件
|
|
|
(通过使用 <command>gcc</command> 的 <parameter>-g</parameter> 选项)。
|
|
|
这意味着在调试这些带有调试信息的程序和库时,
|
|
|
调试器不仅能给出内存地址,还能给出子程序和变量的名称。</para>
|
|
|
|
|
|
<para>然而,插入这些调试符号会显著增大程序或库的体积。
|
|
|
- 下面是一些表现调试符号占用空间的例子:</para>
|
|
|
+ 下面是一些表现调试符号占用空间的例子:</para>
|
|
|
|
|
|
<itemizedlist>
|
|
|
<listitem>
|
|
@@ -29,9 +29,9 @@
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>带有调试符号的 Glibc 和 GCC 文件
|
|
|
- (<filename class="directory">/lib</filename>
|
|
|
- 和 <filename class="directory">/usr/lib</filename> 目录中):
|
|
|
- 87 MB</para>
|
|
|
+ (<filename class="directory">/lib</filename>
|
|
|
+ 和 <filename class="directory">/usr/lib</filename> 目录中):
|
|
|
+ 87 MB</para>
|
|
|
</listitem>
|
|
|
<listitem>
|
|
|
<para>没有调试符号的 Glibc 和 GCC 文件:16 MB</para>
|
|
@@ -39,11 +39,11 @@
|
|
|
</itemizedlist>
|
|
|
|
|
|
<para>以上文件大小的值可能随编译器和 C 运行库的版本而变化,
|
|
|
- 但在比较带调试符号和不带调试符号的程序时,它们文件大小的差距通常达到
|
|
|
- 2 至 5 倍。</para>
|
|
|
+ 但在比较带调试符号和不带调试符号的程序时,它们文件大小的差距通常达到
|
|
|
+ 2 至 5 倍。</para>
|
|
|
|
|
|
<para>由于大多数用户永远不会用调试器调试系统软件,
|
|
|
- 可以通过移除它们的调试符号,回收大量磁盘空间。
|
|
|
- 下一节展示如何从系统程序和库中移除所有调试符号。</para>
|
|
|
+ 可以通过移除它们的调试符号,回收大量磁盘空间。
|
|
|
+ 下一节展示如何从系统程序和库中移除所有调试符号。</para>
|
|
|
|
|
|
</sect1>
|