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" />
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-7.2">
15 <div class="navheader">
17 Linux From Scratch - Version 7.2
24 <a accesskey="p" href="standards.html" title="LFS と各種標準">前のページ</a>
30 <a accesskey="n" href="prerequisites.html" title="必要な知識">次のページ</a>
36 <a accesskey="u" href="preface.html" title="序文">上に戻る</a>
39 <a accesskey="h" href="../index.html" title=
40 "Linux From Scratch - Version 7.2">ホーム</a>
44 <div class="sect1" lang="ja" xml:lang="ja">
46 <a id="pre-why" name="pre-why"></a>v. 各パッケージを用いる理由
49 既に説明しているように LFS が目指すのは、完成した形での実用可能な基盤システムを構築することです。 LFS
50 に含まれるパッケージ群は、パッケージの個々を構築していくために必要となるものばかりです。
51 そこからは最小限の基盤となるシステムを作り出します。 そしてユーザーの望みに応じて、より完璧なシステムへと拡張していくものとなります。
52 LFS は極小システムを意味するわけではありません。 厳密には必要のないパッケージであっても、重要なものとして含んでいるものもあります。
53 以下に示す一覧は、本書内の各パッケージの採用根拠について説明するものです。
55 <div class="itemizedlist">
62 このパッケージは、以下に示すようなシェルスクリプトを生成するプログラムを提供します。
63 つまり開発者が意図しているテンプレートに基づいて、ソースコードを自動的に設定する (configure する)
65 特定のパッケージのビルド方法に変更があった場合は、パッケージ再構築を行うことになるため、その場合に本パッケージが必要となります。
73 このパッケージは、テンプレートとなるファイルから Makefile を生成するためのプログラムを提供します。
74 特定のパッケージのビルド方法に変更があった場合は、パッケージ再構築を行うことになるため、その場合に本パッケージが必要となります。
82 このパッケージは、システムとのインターフェースを実現する Bourne シェルを提供し、LSB コア要件を満たします。
83 他のシェルを選ばずにこれを選ぶのは、一般的に多用されていることと、基本的なシェル関数においての拡張性が高いからです。
91 このパッケージは、リンカー、アセンブラーのような、オブジェクトファイルを取り扱うプログラムを提供します。 各プログラムは
92 LFS における他のパッケージをコンパイルするために必要となり、さらに LFS
93 にて示される以外のパッケージでも必要となります。
101 このパッケージは yacc (Yet Another Compiler Compiler) の GNU
102 バージョンを提供します。 LFS において利用するプログラムの中に、これを必要とするものがあります。
110 このパッケージは、ファイルの圧縮、伸張 (解凍) を行うプログラムを提供します。 これは LFS パッケージの多くを伸張
119 このパッケージは、他のプログラムに対するテストハーネス (test harness) を提供します。
120 これは一時的なツールチェーンにおいてのみインストールします。
128 このパッケージは、ファイルやディレクトリを参照あるいは操作するための基本的なプログラムを数多く提供します。
129 各プログラムはコマンドラインからの実行によりファイル制御を行うために必要です。 また LFS
130 におけるパッケージのインストールに必要となります。
138 このパッケージは、他のプログラムをテストするフレームワークを提供します。
139 これは一時的なツールチェーンプログラムをインストールする際にだけ必要となります。
147 このパッケージは、ファイルやディレクトリ間の差異を表示するプログラムを提供します。
148 各プログラムはパッチを生成するために利用されます。 したがってパッケージのビルド時に利用されることが多々あります。
156 このパッケージは、スクリプトで作られた対話型プログラムを通じて、他のプログラムとのやりとりを行うプログラムを提供します。
157 通常は他のパッケージをテストするために利用します。 本書では一時的なツールチェーンの構築時にしかインストールしません。
165 このパッケージは ext2, ext3, ext4 の各ファイルシステムを取り扱うユーティリティを提供します。
166 各ファイルシステムは Linux がサポートする一般的なものであり、十分なテストが実施されているものです。
174 このパッケージは、指定されたファイルの種類を判別するユーティリティプログラムを提供します。
175 他のパッケージにおいて、ビルド時にこれを必要とするものもあります。
183 このパッケージは、ファイルシステム上のファイルを検索するプログラムを提供します。
184 これは他のパッケージにて、ビルド時のスクリプトにおいて利用されています。
192 このパッケージは、テキスト内の特定パターンの認識プログラムを生成するユーティリティを提供します。 これは lex (字句解析;
193 lexical analyzer) プログラムの GNU 版です。 LFS
194 内の他のパッケージの中にこれを必要としているものがあります。
202 このパッケージはテキストファイルを操作するプログラムを提供します。 プログラムは GNU 版の awk
203 (Aho-Weinberg-Kernighan) です。
204 これは他のパッケージにて、ビルド時のスクリプトにおいて利用されています。
212 これは GNU コンパイラーコレクションパッケージです。 C コンパイラーと C++ コンパイラーを含みます。また LFS
213 ではビルドしないコンパイラーも含まれています。
221 このパッケージは GNU データベースマネージャーライブラリを提供します。 LFS が扱う Man-DB
230 このパッケージは、各種パッケージが国際化を行うために利用するユーティリティやライブラリを提供します。
238 このパッケージは C ライブラリです。Linux 上のプログラムはこれがなければ動作させることができません。
246 このパッケージは数値演算ライブラリを提供するもので、任意精度演算 (arbitrary precision
247 arithmetic) についての有用な関数を含みます。 これは GCC をビルドするために必要です。
255 このパッケージはファイル内を検索するプログラムを提供します。
256 これは他のパッケージにて、ビルド時のスクリプトにおいて利用されています。
264 このパッケージは、テキストを処理し整形するプログラムをいくつか提供します。 重要なものプログラムとして man
273 これは Grand Unified Boot Loader です。
274 ブートローダーとして利用可能なものの中でも、これが最も柔軟性に富むものです。
282 このパッケージは、ファイルの圧縮と伸張 (解凍) を行うプログラムを提供します。 LFS において、パッケージを伸張 (解凍)
291 このパッケージは、ネットワークサービスやプロトコルに関するデータを提供します。
292 ネットワーク機能を適切に有効なものとするために、これが必要です。
300 このパッケージは、ネットワーク管理を行う基本的なプログラム類を提供します。
308 このパッケージは、IPv4、IPv6 による基本的な、あるいは拡張したネットワーク制御を行うプログラムを提供します。 IPv6
309 への対応があることから、よく使われてきたネットワークツールパッケージ (net-tools) に変わって採用されました。
317 このパッケージは、米国以外のキーボードに対してのキーテーブルファイルやキーボードユーティリティを提供します。
326 このパッケージは Linux カーネルモジュールを管理するために必要なプログラムを提供します。
334 このパッケージはテキストファイルを表示する機能を提供するものであり、表示中にスクロールを可能とします。 また Man-DB
335 において man ページを表示する際にも利用されます。
343 このパッケージは GNU の汎用的なライブラリに対してのサポートスクリプトを提供します。
344 これは、複雑な共有ライブラリの取り扱いを単純なものとし、移植性に優れた一貫した方法を提供します。 LFS
345 パッケージのテストスイートにおいて必要となります。
353 このパッケージは "オペレーティングシステム" であり GNU/Linux 環境における Linux です。
361 このパッケージは汎用的なテキストマクロプロセッサーであり、他のプログラムを構築するツールとして利用することができます。
369 このパッケージは、パッケージ構築を指示するプログラムを提供します。 LFS
370 におけるパッケージでは、ほぼすべてにおいて必要となります。
378 このパッケージは man ページを検索し表示するプログラムを提供します。 <span class=
379 "application">man</span>
380 パッケージではなく本パッケージを採用しているのは、その方が国際化機能が優れているためです。 このパッケージは man
389 このパッケージは Linux の基本的な man ページを提供します。
397 このパッケージは複素数演算のための関数を提供します。 GCC パッケージがこれを必要としています。
405 このパッケージは倍精度演算 (multiple precision) の関数を提供します。 GCC
414 このパッケージは、端末に依存せず文字キャラクターを取り扱うライブラリを提供します。
415 メニュー表示時のカーソル制御を実現する際に利用されます。 LFS の他のパッケージでは、たいていはこれを必要としています。
423 このパッケージは、<span class="emphasis"><em>パッチ</em></span>
424 ファイルの適用により、特定のファイルを修正したり新規生成したりするためのプログラムを提供します。 パッチファイルは
425 <span class="application">diff</span> プログラムにより生成されます。 LFS
426 パッケージの中には、構築時にこれを必要とするものがあります。
434 このパッケージは、ランタイムに利用されるインタープリター言語 PERL を提供します。 LFS
435 の他のパッケージでは、インストール時やテストスイートの実行時にこれを必要とするものがあります。
443 このパッケージは、既にインストールされたライブラリやパッケージのメタデータを取得するプログラムを提供します。
451 このパッケージは、コマンドライン入力を処理するプログラムがライブラリを利用しています。
459 このパッケージは、プロセスの監視を行うプログラムを提供します。 システム管理にはこのパッケージが必要となります。 また LFS
460 ブートスクリプトではこれを利用しています。
468 このパッケージは、実行中のプロセスに関する情報を表示するプログラムを提供します。
469 システム管理にはこのパッケージが必要となります。
477 このパッケージは、コマンドライン上での入力編集や履歴管理を行うライブラリを提供します。 これは Bash が利用しています。
485 このパッケージは、テキストの編集を、テキストエディターを用いることなく可能とします。 LFS パッケージにおける
486 configure スクリプトは、たいていこれを必要としています。
494 このパッケージは、セキュアな手法によりパスワード制御を行うプログラムを提供します。
502 このパッケージは、システムメッセージログを扱うプログラムを提供します。
503 例えばカーネルが出力するログや、デーモンプロセスが異常発生時に出力するログなどです。
511 このパッケージは <span class="application">init</span> プログラムを提供します。 これは
512 Linux システム上のすべてのプロセスの基点となるものです。
520 このパッケージは、アーカイブや圧縮機能を提供するもので LFS が扱うすべてのパッケージにて利用されています。
528 このパッケージはツールコマンド言語 (Tool Command Language) を提供します。 LFS
529 が扱うパッケージにてテストスイートの実行に必要となります。 これは一時的なツールチェーンの構築時にのみインストールします。
537 このパッケージは Info ページに関しての入出力や変換を行うプログラムを提供します。 LFS
538 が扱うパッケージのインストール時には、たいてい利用されます。
546 このパッケージはデバイスノードの動的生成を行うプログラムを提供します。 /dev
547 ディレクトリに、デバイスを静的にいくつも作り出す方法を取らないためのものです。
555 このパッケージは数多くのユーティリティプログラムを提供します。
556 その中には、ファイルシステムやコンソール、パーティション、メッセージなどを取り扱うユーティリティがあります。
564 このパッケージはテキストエディターを提供します。 これを採用しているのは、従来の vi
565 エディタとの互換性があり、しかも数々の有用な機能を提供するものだからです。
566 テキストエディターは個人により好みはさまざまですから、もし別のエディターを利用したいなら、そちらを用いても構いません。
574 このパッケージはファイルの圧縮、伸張 (解凍) を行うプログラムを提供します。
575 一般的に用いられるものの中では高い圧縮率を実現するものであり、特に XZ フォーマットや LZMA フォーマットの伸張
584 このパッケージは、圧縮や解凍の機能を提供するもので、他のプログラムがこれを利用しています。
590 <div class="navfooter">
593 <a accesskey="p" href="standards.html" title="LFS と各種標準">前のページ</a>
599 <a accesskey="n" href="prerequisites.html" title="必要な知識">次のページ</a>
605 <a accesskey="u" href="preface.html" title="序文">上に戻る</a>
608 <a accesskey="h" href="../index.html" title=
609 "Linux From Scratch - Version 7.2">ホーム</a>