<sect1 id="ch06-glibc">
<!--
<title>Installing Glibc-&glibc-version;</title>
-->
<title>Glibc-&glibc-version; のインストール</title>
<?dbhtml filename="glibc.html" dir="chapter06"?>

<!--
<screen>Estimated build time:           &glibc-time;
Estimated required disk space:  &glibc-compsize;</screen>
-->
<screen>推定構築時間:           &glibc-time;
推定必要ディスクスペース  &glibc-compsize;</screen>

&aa-glibc-shortdesc;
&aa-glibc-dep;

<sect2><title>&nbsp;</title><para>&nbsp;</para></sect2>

<sect2>
<!--
<title>Glibc installation</title>
-->
<title>Glibc のインストール</title>

<!--
<para>The Glibc build system is very well self-contained and will install
perfectly, even though our compiler specs file and linker are still pointing
at <filename>/tools</filename>. We cannot adjust the specs and linker before
the Glibc install, because the Glibc autoconf tests would then give bogus
results and thus defeat our goal of achieving a clean build.</para>
-->
<para>Glibc 構築システムは非常に独立的で、たとえコンパイラスペックファイルとリンカがまだ <filename>/tools</filename> を指していたとしても、完壁にインストールされます。
Glibc をインストールする前にスペックファイルとリンカを調整すると、Glibc autoconf テストが偽の結果を与え、それゆえクリーンな構築を行うという目的を駄目にしてしまうので、インストールの前にこの二つを調整することができません。</para>

<!--
<note><para>The test suite for Glibc in this section is considered
<emphasis>critical</emphasis>. Our advice is to not skip it under any
circumstance.</para></note>
-->
<note><para>この章の Glibc へのテストスイーツは<emphasis>必須</emphasis>だと考えています。どんな状況下でもテストを飛ばしてしまわないように注意しておきます。</para></note>

<!--
<para>Before starting to build Glibc, remember to unpack the Glibc-linuxthreads
again inside the <filename>glibc-&glibc-version;</filename> directory, and to
unset any environment variables that override the default optimization
/flags.</para>
-->
<para>Glibc の構築を始める前に、再度 Glibc-linuxthreads を <filename>glibc-&glibc-version;</filename> というディレクトリの中に解凍することを思い出してください。
そして、デフォルトの最適化フラグを上書きするあらゆる環境変数を外しましょう。</para>

<!--
<para>Though it is a harmless message, the install stage of Glibc will
complain about the absence of <filename>/etc/ld.so.conf</filename>. Fix this
annoying little warning with:</para>
-->
<para>害のないメッセージですが、Glibc のインストール段階で <filename>/etc/ld.so.conf</filename> がないのに不平を言うでしょう。この煩わしいささいな警告を修正しておきます。</para>

<screen><userinput>touch /etc/ld.so.conf</userinput></screen>

<!--
<para>Then apply the same patch we used previously:</para>
-->
<para>それから以前使ったものと同じパッチをあてます。</para>
                                                                                
<screen><userinput>patch -Np1 -i ../&glibc-sscanf-patch;</userinput></screen>

<!--
<para>The Glibc documentation recommends building Glibc outside of the source
directory in a dedicated build directory:</para>
-->
<para>Glibc 文書は、ソースディレクトリとは別の構築専用ディレクトリでコンパイルするよう勧めています。</para>

<screen><userinput>mkdir ../glibc-build
cd ../glibc-build</userinput></screen>

<!--
<para>Now prepare Glibc for compilation:</para>
-->
<para>それではコンパイルのために Glibc を準備します。</para>

<screen><userinput>../glibc-&glibc-version;/configure --prefix=/usr \
&nbsp;&nbsp;&nbsp;&nbsp;--disable-profile --enable-add-ons \
&nbsp;&nbsp;&nbsp;&nbsp;--libexecdir=/usr/bin --with-headers=/usr/include</userinput></screen>

<!--
<para>The meaning of the new configure options:</para>
-->
<para>新しいコンフィグオプションの意味</para>

<itemizedlist>
<!--
<listitem><para><userinput>&#045;&#045;libexecdir=/usr/bin</userinput>: This will
cause the <filename>pt_chown</filename> program to be installed in the
<filename>/usr/bin</filename> directory.</para></listitem>
-->
<listitem><para><userinput>--libexecdir=/usr/bin</userinput>: これは <filename>pt_chown</filename> プログラムを <filename>/usr/bin</filename> ディレクトリにインストールするようにします。</para></listitem>

<!--
<listitem><para><userinput>&#045;&#045;with-headers=/usr/include</userinput>: This
ensures that the kernel headers in <filename>/usr/include</filename> are used
for this build. If you don't pass this switch then the headers from
<filename>/tools/include</filename> are used which of course is not ideal
(although they should be identical). Using this switch has the advantage
that you will be informed immediately should you have forgotten to install the
kernel headers into <filename>/usr/include</filename>.</para></listitem>
-->
<listitem><para><userinput>--with-headers=/usr/include</userinput>: これは <filename>/usr/include</filename> の中のカーネルヘッダがこの構築で使われるようにします。
このスイッチを渡さなければ、もちろん理想的でないことに（これらは同一であるはずですが） <filename>/tools/include</filename> にあるヘッダが使われます。
このスイッチを使うと、カーネルヘッダを <filename>/usr/include</filename> にインストールし忘れているなら、すぐに通知されるという利点を持ちます。</para></listitem>
</itemizedlist>

<!--
<para>Compile the package:</para>
-->
<para>パッケージをコンパイルします。</para>

<screen><userinput>make</userinput></screen>

<!--
<para>Test the results:</para>
-->
<para>結果をテストします。</para>

<screen><userinput>make check</userinput></screen>

<!--
<para>The test suite notes from <xref linkend="ch05-glibc"/> are still very much
appropriate here. Be sure to refer back there should you have any doubts.</para>
-->
<para><xref linkend="ch05-glibc"/>という節からのテストスイーツの注意書きはここでもまだとても役立ちます。万一何か疑問を持ったらそこを参照して確かめて下さい。</para>

<!--
<para>And install the package:</para>
-->
<para>それではパッケージをインストールします。</para>

<screen><userinput>make install</userinput></screen>

<!--
<para>The locales that can make your system respond in a different language
weren't installed by the above command. Do it with this:</para>
-->
<para>違った言語に対応するシステムにするロケールは、上述のコマンドではインストールされません。次のコマンドを実行します。</para>

<screen><userinput>make localedata/install-locales</userinput></screen>

<!--
<para>An alternative to running the previous command is to install only those
locales which you need or want. This can be achieved using the
<userinput>localedef</userinput> command. Information on this can be found in
the <filename>INSTALL</filename> file in the
<filename>glibc-&glibc-version;</filename> tree. However,  there are a number
of locales that are essential for the tests of future packages to pass
correctly. The following instructions, in place of the install-locales
command above, will install the minimum set of locales necessary for the
tests to run successfully:</para>
-->
<para>前のコマンドを実行する代わりに、必要とするか欲しいロケールだけをインストールすることができます。
これは <userinput>localedef</userinput> コマンドで行います。これについての情報は <filename>glibc-&glibc-version;</filename> ツリーの中の <filename>INSTALL</filename> ファイルの中にあります。
しかし、いくつかのロケールはこの先のパッケージのテストを正しく通すために必要です。以下の説明では、上の install-locales コマンドの代わりに、テストを行うのにに必要な最小のロケールセットをインストールします。</para>

<screen><userinput>mkdir -p /usr/lib/locale
localedef -i de_DE -f ISO-8859-1 de_DE
localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro
localedef -i en_HK -f ISO-8859-1 en_HK
localedef -i en_PH -f ISO-8859-1 en_PH
localedef -i en_US -f ISO-8859-1 en_US
localedef -i es_MX -f ISO-8859-1 es_MX
localedef -i fr_FR -f ISO-8859-1 fr_FR
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro
localedef -i it_IT -f ISO-8859-1 it_IT
localedef -i ja_JP -f EUC-JP ja_JP</userinput></screen>

<!--
<para>Finally, build the linuxthreads man pages:</para>
-->
<para>最後に、linuxthreads man ページを構築します。</para>

<screen><userinput>make -C ../&glibc-dir;/linuxthreads/man</userinput></screen>

<!--
<para>And install these pages:</para>
-->
<para>それからこれらのパッケージをインストールします。</para>

<screen><userinput>make -C ../&glibc-dir;/linuxthreads/man install</userinput></screen>

</sect2>
&c6-cf-glibc;
</sect1>

