configureスクリプト
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/03/17 15:10 UTC 版)
configureスクリプトは、UnixまたはUnix系の環境にパッケージをインストールする場合に、クロスプラットフォームのサポートを容易にするためにコードベースのビルド構成ファイルを生成するシェルスクリプトである。ホストシステム(コードベースがビルドされ実行される環境)に合わせてファイルを生成する。
このようなスクリプトの標準は存在しないが、このパターンは非常に普及しているため、多くの開発者はこれをよく知っており、この機能を備えたconfigureという名前のスクリプトを期待している。スクリプトは手動でコーディング可能であり、元々は手動でコーディングされていた。現在では、特別な構成ファイルに基づいてconfigureスクリプトを生成するためのツールが複数存在する。よく使用されるツールの一つは、Bashスクリプトを生成するAutotoolsである。
ソフトウェアパッケージをソースコードとして取得し、ローカルでコンパイルすることは、UnixおよびUnix系の環境では一般的なシナリオである。通常、このプロセスには次の手順が含まれる。
- ビルド構成ファイルの生成
- コードのビルド
- 結果をアクセス可能な場所にインストール
configureスクリプトは、ホストシステム用に構成されたmakefileを生成することで最初の手順を実行する。これには、コードベースで必要なホストのライブラリの使用が含まれる。
使用
コマンドラインシェルでソースコードを含むディレクトリに移動した後、通常は次のコマンドが実行される[1]。
./configure
make
make install
Autotoolsの場合、configureスクリプトはステータスとエラーをconfig.log
ファイルに記録し、コマンド./configure --help
はコマンドラインのヘルプ情報を出力する。
多くの場合、コードベースには手順を記載したドキュメントファイルがINSTALL
のような名前で含まれている。これは、configureスクリプトが失敗した場合に役立つ。
生成
Autotoolsは、クロスプラットフォームソフトウェア開発の課題の一部を簡素化する[2]。これらのツールは、環境設定、プラットフォームアーキテクチャ、および必要なビルドとランタイムの依存関係の存在と場所についてホストシステムを照会する。収集された情報はconfigure.ac
に保存され、インストールフェーズでconfigure
によって読み取られる。
新しい開発では、ライブラリの依存関係のチェックは、m4マクロPKG_CHECK_MODULES
を介してpkg-configで実行できる。pkg-configが普及する前は、依存するライブラリのディストリビューションに含まれていることがわかっているファイルを見つけるために、別のm4マクロが作成されていた。
歴史
configureスクリプトが付属した最初のプログラムは、1984年にラリー・ウォールが作成したrnである。スクリプトは手書きで作成され、実行すると冗談めいた実況解説が表示される。このスクリプトは、現在でもtrnプログラムのビルドシステムの一部として残っている[3]。
それ以来、configureスクリプトの作成を自動化するツールのエコシステムが開発されてきた。その中で最も一般的なのはAutoconfである。
脚注
- ^ “Compiling Linux Software from Source Code”. Control-Escape's Linux Help Engine. 2010年11月20日閲覧。
- ^ “Autoconf - GNU Project - Free Software Foundation (FSF)”. GNU Operating System. 2010年11月20日閲覧。
- ^ “Configure script of trn”. GitHub. 2020年12月10日閲覧。
- Configureスクリプトのページへのリンク