<sect1 id="ch06-aboutdebug">
<!--
<title>About debugging symbols</title>
-->
<title>デバッグシンボルについて</title>
<?dbhtml filename="aboutdebug.html" dir="chapter06"?>

<!--
<para>Most programs and libraries are, by default, compiled with debugging
symbols included (with gcc option -g).</para>
-->
<para>ほとんどのプログラムとライブラリは、デフォルトではデバッグシンボルを含んだ状態で（ gcc オプション -g ）コンパイルされます。</para>

<!--
<para>When debugging a program or library that was compiled with debugging
information included, the debugger can give you not only memory addresses
but also the names of the routines and variables.</para>
-->
<para>デバッグ情報を含んでコンパイルされたプログラムやライブラリをデバッグするとき、デバッガはメモリアドレスだけでなく、ルーチンや変数の名前も表示します。</para>
 
<!--
<para>But the inclusion of these debugging symbols enlarges a program or
library significantly. To get an idea of the amount of space these symbols
occupy, have a look at the following:</para>
-->
<para>しかしこれらのデバッグシンボルを含めることはプログラムやライブラリのサイズを著しく大きくします。これらのシンボルが占める量を知るために次を見て下さい。</para>

<itemizedlist>

<!--
<listitem><para>a bash binary 
with debugging symbols: 1200 KB</para></listitem>
-->
<listitem><para>デバッグシンボルを含む bash バイナリ: 1200KB</para></listitem>

<!--
<listitem><para>a bash binary 
without debugging symbols: 480 KB</para></listitem>
-->
<listitem><para>デバッグシンボルを含まない bash バイナリ: 480KB</para></listitem>

<!--
<listitem><para>Glibc and GCC files (/lib and /usr/lib) 
with debugging symbols: 87 MB</para></listitem>
-->
<listitem><para>デバッグシンボルを含む Glibc 及び GCC ファイル（ /lib 及び /usr/lib ） : 87MB</para></listitem>

<!--
<listitem><para>Glibc and GCC files 
without debugging symbols: 16 MB</para></listitem>
-->
<listitem><para>デバッグシンボルを含まない Glibc 及び GCC ファイル（ /lib 及び /usr/lib ） : 16MB</para></listitem>

</itemizedlist>

<!--
<para>Sizes may vary a little, depending on which compiler was used and
which C library. But when comparing programs with and without debugging
symbols, the difference will generally be a factor between 2 and 5.</para>
-->
<para>これらのサイズは、どのコンパイラやどのライブラリが使われかたによって少し変わるかも知れません。
しかしデバッグシンボルを含むプログラムと含まないものを比べると、その違いは一般的に 2 倍から 5 倍になります。</para>

<!--
<para>As most people will probably never use a debugger on their system
software, a lot of disk space can be regained by removing these symbols .</para>
-->
<para>恐らくほとんどの人はシステムソフトにデバッガを使うことは無いでしょうから、これらのシンボルを削除することで大量のディスクスペースを取り戻せます。</para>

<!--
<para>To remove debugging symbols from a binary (which must be an a.out
or ELF binary), run <userinput>strip &#045;&#045;strip-debug filename</userinput>.
Wildcards can be used to treat multiple files (use something like
<userinput>strip &#045;&#045;strip-debug $LFS/tools/bin/*</userinput>).</para>
-->
<para>バイナリ（a.out か ELF バイナリでなければいけません）からデバッグシンボルを削除する、<userinput>strip --strip-debug ファイル名</userinput> を実行します。
多くのファイルを扱うためにワイルドカード（ <userinput>strip --strip-debug $LFS/tools/bin/*</userinput> といったように）が使えます。</para>

<!--
<para>For your convenience, <xref linkend="chapter09"/> includes one simple
command to strip all debugging symbols from all programs and libraries on your
system. Additional information on optimization can be found in the hint at
<ulink url="&hints-root;optimization.txt"/>.</para>
-->
<para>便宜的に、<xref linkend="chapter09"/>に、お使いのシステムにあるすべてのプログラムとライブラリから、すべてのデバッグシンボルを削除する簡単なコマンドを掲載しています。
最適化に関する追加情報は <ulink url="&hints-root;optimization.txt"/> にあるヒントの中にあります。</para>

</sect1>

