[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
configure
Scripts
以下では、configure
スクリプトを使ったパッケージをどうやって
自動設定するかを述べます。以下のテキストは、パッケージに添付する
`INSTALL'ファイルとしても使えます。配布可能なプレーンテキスト版の
`INSTALL'はAutoconfパッケージに含まれています。
10.1 基本インストール | Instructions for typical cases. | |
10.2 コンパイラとオプション | Selecting compilers and optimization. | |
10.3 複数のアーキテクチャに対するコンパイル | Compiling for multiple architectures at once. | |
10.4 インストール名 | Installing in different directories. | |
10.5 オプションの特徴 | Selecting optional features. | |
10.6 システムタイプの指定 | Specifying the system type. | |
10.7 デフォルトの共有 | Setting site-wide defaults for configure . | |
10.8 オペレーションの制御 | Changing how configure runs. |
これらは一般的なインストール説明書です。
configure
シェルスクリプトは、コンパイル時に利用する、様々なシステ
ム依存変数の、正しい値を推測します。パッケージの、それぞれのディレクトリ
の`Makefile'を作るために、これらの値は使われます。システム依存の定
義を含む、一つ以上の`.h'ファイルも作ります。最終的に、将来、現在の
コンフィグレーションを再生成する、シェルスクリプト `config.status'
と、再コンフィグレーションのスピードをあげるため、テストの結果を保存する
ファイル`config.cache'と、コンパイラ出力を含むファイル
`config.log'(主にconfigure
のデバッグで役立ちます)を作ります。
パッケージをコンパイルするため、通常でないことをする必要がある場合、そう
するためにconfigure
にチェックさせた方法を理解し、次のリリースに反
映できるように、`README'にあるアドレスに、diffの結果や説明をメール
してください。いくつかの点で、保存する必要のない`config.cache'の結
果は、削除したり編集したりして構いません。
ファイル`configure.in'は、autoconf
と呼ばれるプログラムで、
`configure'を作るために使われます。変更したり、新しいバージョンの
autoconf
で再生成したい場合だけ、`configure.in'が必要です。
このパッケージをコンパイルする最も単純な方法は、以下の通りです。
cd
して、システムに対するパッ
ケージのコンフィグレーションのため、`./configure'と入力してください。
System Vの古いバージョンのcsh
を使っている場合、 csh
で
configure
を実行させないため、`sh ./configure'と入力する必要
がある可能性があります。
configure
の実行には、しばらくかかります。実行中、調べている特徴を
伝えるメッセージを出力します。
configure
が作ったファ
イルの削除(他の種類のコンピュータに対するパッケージの、コンパイルできる
ようにするため)は、`make distclean'の入力で可能です。 `make
maintainer-clean'ターゲットもありますが、主にパッケージ開発者用です。そ
れを使う場合、配布物の付属ファイルを再生成するため、他のプログラムを使う
必要が発生するかも知れません。
configure
スクリプトが知らない、普通使わない、コンパイルやリンクの
オプションが必要なシステムもあります。環境変数に初期値をセットすることで、
configure
にそれを与えることができます。Bourneシェル互換のシェルを
使って、以下のようにコマンドラインで行うことができます。
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure |
env
プログラムがあるシステムでは、以下のようにしてもできます。
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure |
それぞれのアーキテクチャのためのオブジェクトファイルを、それ自身のディレ
クトリに置くことで、同時に1種類以上のコンピュータで、パッケージをコンパ
イルすることができます。こうするために、GNU make
の様に、
VPATH
変数をサポートするmake
のバージョンを使う必要がありま
す。オブジェクトファイルと実行可能なファイルを置くディレクトリに
cd
して、configure
スクリプトを実行します。 configure
は、configure
があるディレクトリと`..'で、ソースコードを自動
的に調べます。
VPATH
をサポートしないmake
を使う必要がある場合、ソースコー
ドディレクトリで、一度、一つのアーキテクチャのために、パッケージをコンパ
イルする必要があります。一つのアーキテクチャのパッケージをインストールし
た後、他のアーキテクチャに対して再コンフィグレーションするため、
`make distclean'を使ってください。
デフォルトで、`make install'はパッケージファイルを、
`/usr/local/bin'や`/usr/local/man'等にインストールします。イン
ストールプレフィクスを、`--prefix=path'オプションで
configure
に与えることで、特定することができます。
アーキテクチャ特有のファイルと、アーキテクチャ非依存のファイルを、別々の
インストールプレフィクスに分けて特定することができます。
configure
に`--exec-prefix=path'オプションを与えた場合、
パッケージは、プログラムとライブラリをインストールするプレフィクスとして、
pathを使います。ドキュメントと他のデータファイルは通常のプレフィク
スを使います。
さらに、普通でないディレクトリ配置を使う場合、特定の種類のファイルに対し、 異なる値で特定するよう、`--bindir=path'のようなオプションを与 えることで可能です。セットできるディレクトリリストと、そこに置きたいファ イルの種類は、`configure --help'で見ることができます。
パッケージがサポートする場合、configure
に
`--program-prefix=PREFIX'や
`--program-suffix=SUFFIX'オプションを与えることで、プログラム
を、追加のプレフィクスやサフィックスで、インストールすることができます。
configure
への`--enable-feature'オプションに注意を払う
パッケージもあり、featureは、パッケージのオプションパートを示しま
す。`--with-package'オプションに注意を払うパッケージもあり、
packageは、`gnu-as'や`x'(X Window System用)の様なもので
す。`README'は、パッケージが理解する、 `--enable-'と
`--with-'オプションに付いて述べています。
X Window Systemを使うパッケージのため、configure
は普通、Xインクルー
ドやリンクファイルを自動的に見つけますが、できなかった場合は、
configure
オプションの、`--x-includes=dir'と
`--x-libraries=dir'を、場所を特定するために使うことができます。
configure
が自動的に判定できない特徴もありますが、パッケージを実行
する、ホストのタイプを定義する必要があるものもあります。普通
configure
はそれを判定できますが、ホストタイプが分からない旨メッセー
ジを出力した場合、`--host=type'オプションで与えてください。
typeは、`sun4'の様なシステムタイプの短い名前や、3つのフィール
ドを持つ標準的な名前です。
cpu-company-system |
クロスコンパイルのためのコンパイラツールを作っている場合、同様に、コード を生成するシステムのタイプを選択するための`--target=type'オプ ションと、パッケージをコンパイルするシステムタイプを選択するための `--build=type'オプションを使うこともできます。
configure
を共有するため、デフォルト値をセットしたい場合、
`config.site'と呼ばれる、サイトシェルスクリプトを作ることができ、そ
れは、CC
、cache_file
と、prefix
の様な変数を与えます。
configure
は、`prefix/share/config.site'の存在を調べ、
そして、`prefix/etc/config.site'の存在を調べます。
CONFIG_SITE
環境変数を、サイトスクリプトのある場所にセットすること
もできます。注意として、全てのconfigure
スクリプトが、サイトスクリ
プトを探すわけではないことがあげられます。
configure
は、処理方法をコントロールする以下のオプションを理解し
ます。
--cache-file=file
--help
configure
オプションの概要を出力して終了します。
--quiet
--silent
-q
--srcdir=dir
configure
は、ディレクトリを自動的に決定するはずです。
--version
configure
の生成に使った、Autoconfのバージョンを出力し終了します。
configure
は、同様に、広範囲では役に立たないかも知れないが、他のオ
プションも受け入れます。
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |