1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml">
5 <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=utf-8" />
7 5.4. Binutils-2.21 - 1回め
9 <link rel="stylesheet" href="../stylesheets/lfs.css" type="text/css" />
10 <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
11 <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
12 "text/css" media="print" />
14 <body class="lfs" id="lfs-6.8">
15 <div class="navheader">
17 Linux From Scratch - Version 6.8
24 <a accesskey="p" href="generalinstructions.html" title=
25 "全般的なコンパイル手順">前のページ</a>
31 <a accesskey="n" href="gcc-pass1.html" title=
32 "GCC-4.5.2 - 1回め">次のページ</a>
38 <a accesskey="u" href="chapter05.html" title=
39 "第5章 一時的環境の構築">上に戻る</a>
42 <a accesskey="h" href="../index.html" title=
43 "Linux From Scratch - Version 6.8">ホーム</a>
47 <div class="wrap" lang="ja" xml:lang="ja">
49 <a id="ch-tools-binutils-pass1" name=
50 "ch-tools-binutils-pass1"></a>5.4. Binutils-2.21 - 1回め
52 <div class="package" lang="ja" xml:lang="ja">
54 Binutils パッケージは、リンカやアセンブラなどのようにオブジェクトファイルを取り扱うツール類を提供します。
56 <div class="segmentedlist">
57 <div class="seglistitem">
59 <strong class="segtitle">概算ビルド時間:</strong> <span class=
60 "segbody">1 SBU</span>
63 <strong class="segtitle">必要ディスク容量:</strong> <span class=
64 "segbody">248 MB</span>
69 <div class="installation" lang="ja" xml:lang="ja">
71 5.4.1. クロスコンパイル版 Binutils のインストール
73 <div class="admon note">
74 <img alt="[注記]" src="../images/note.png" />
79 前の節に戻って再度説明をよく読み、重要事項として説明している内容をよく理解しておいてください。
80 そうすればこの後の無用なトラブルを減らすことができるはずです。
84 Binutils は一番最初にビルドするパッケージです。 ここでビルドされるリンカやアセンブラを使って、Glibc や GCC
85 の様々な機能が利用できるかどうかを判別することになります。
88 Binutils のドキュメントでは Binutils
89 をビルドする際に、ソースディレクトリではなく、ビルド専用のディレクトリを使ってビルドすることを推奨しています。
91 <pre class="userinput">
92 <kbd class="command">mkdir -v ../binutils-build
93 cd ../binutils-build</kbd>
95 <div class="admon note">
96 <img alt="[注記]" src="../images/note.png" />
101 本節以降で SBU値を示していきます。 これを活用していくなら、本パッケージの configure
102 から初めのインストールまでの処理時間を計測しましょう。 具体的には処理コマンドを <span class=
103 "command"><strong>time</strong></span> で囲んで <strong class=
104 "userinput"><code>time { ./configure ... && make
105 && make install; }</code></strong> と入力すれば実現できます。
108 <div class="admon note">
109 <img alt="[注記]" src="../images/note.png" />
114 概算ビルド時間と必要ディスク容量は、この第5章ではテストスイートに関わる時間や容量は含めないことにします。
118 Binutils をコンパイルするための準備をします。
120 <pre class="userinput">
121 <kbd class="command">../binutils-2.21/configure \
122 --target=$LFS_TGT --prefix=/tools \
123 --disable-nls --disable-werror</kbd>
125 <div class="variablelist">
127 <b>configure オプションの意味:</b>
131 <span class="term"><code class=
132 "envar">--target=$LFS_TGT</code></span>
136 変数 <code class="envar">LFS_TGT</code> に設定しているマシン名は
137 <span class="command"><strong>config.guess</strong></span>
138 スクリプトが返すものとは微妙に異なります。 そこでこのオプションは、Binutils
139 のビルドにあたってクロスリンカをビルドするように <span class=
140 "command"><strong>configure</strong></span> スクリプトに指示するものです。
144 <span class="term"><em class=
145 "parameter"><code>--prefix=/tools</code></em></span>
149 configure スクリプトに対して Binutils プログラムを <code class=
150 "filename">/tools</code> ディレクトリ以下にインストールすることを指示します。
154 <span class="term"><em class=
155 "parameter"><code>--disable-nls</code></em></span>
159 一時的なツール構築にあたっては i18n 国際化は行わないことを指示します。
163 <span class="term"><em class=
164 "parameter"><code>--disable-werror</code></em></span>
168 ホストのコンパイラが警告を発した場合に、ビルドが中断することがないようにします。
176 <pre class="userinput">
177 <kbd class="command">make</kbd>
180 コンパイルが終了しました。通常ならここでテストスイートを実行します。
181 しかしシステム構築初期のこの段階ではテストスイートのフレームワーク (Tcl, Expect, DejaGNU)
182 が準備できていません。 さらにこの時点で生成されるプログラムは、すぐに次の生成作業によって置き換えられますから、
183 この時点でテストを実行することはあまり意味がありません。
186 x86_64 にて作業をしている場合は、ツールチェーンの切り分けを適切に行うためにシンボリックリンクを作成します。
188 <pre class="userinput">
189 <kbd class="command">case $(uname -m) in
190 x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;
196 <pre class="userinput">
197 <kbd class="command">make install</kbd>
200 <div class="content" lang="ja" xml:lang="ja">
202 本パッケージの詳細は <a class="xref" href=
203 "../chapter06/binutils.html#contents-binutils" title=
204 "6.12.2. Binutils の構成">6.12.2.「Binutils の構成」</a> を参照してください。
208 <div class="navfooter">
211 <a accesskey="p" href="generalinstructions.html" title=
212 "全般的なコンパイル手順">前のページ</a>
218 <a accesskey="n" href="gcc-pass1.html" title=
219 "GCC-4.5.2 - 1回め">次のページ</a>
225 <a accesskey="u" href="chapter05.html" title=
226 "第5章 一時的環境の構築">上に戻る</a>
229 <a accesskey="h" href="../index.html" title=
230 "Linux From Scratch - Version 6.8">ホーム</a>