install.rb / setup.rb を使ったプログラムのインストール
まず、エンドユーザが install.rb / setup.rb を使って
パッケージをインストールする過程を説明します。
以下の実行例では setup.rb を使いますが、install.rb も
使い方はまったく同じなので適宜読みかえてください。
通常は次の三行で十分です。
(# の行ではおそらくスーパーユーザ権限が必要でしょう)
$ ruby setup.rb config $ ruby setup.rb setup # ruby setup.rb install
config は設定の変更、setup がコンパイル、install で
実際のインストールを行います。
以下、もう少し詳細に説明します。setup.rb にはグローバル
オプションとコマンド、そしてコマンド専用のオプションが
あります。組みあわせとしては以下のようになります。
ruby setup.rb グローバルオプション ruby setup.rb コマンド ruby setup.rb コマンド コマンドオプション
CVS を知っている人は cvs コマンドに似たようなものだと
思ってください。まずグローバルオプションとしては次の
三種類が使えます。
-q,--quietメッセージ出力を最小限にする
--verbose実行中の状況を詳細に表示する (デフォルトはオン)
-h,--help
install.rb / setup.rb の使いかたなどを表示
-v,--version
install.rb / setup.rb のバージョンを表示
--copyright
install.rb / setup.rb の著作権を表示
コマンドは以下の五つです。
config設定をチェックしたうえで保存する
show現在の設定を表示する
setupコンパイルなど、ファイル内容の変更を行うもの
install実際のインストール
clean
setup で作成したものを消す
続いて順次コマンドのオプションを解説します。
config のタスクオプション--prefix=PATH
--rb-dir --so-dir などの共通部分
--install-prefix=PATH
実際にインストールするディレクトリパスの prefix。
--prefix がプログラムが実行されるときのパスであるのに
対し --install-prefix はプログラムをコピーする場所を
指定します。主に RPM などのバイナリパッケージ作成用です。
デフォルトは --prefix と同じ値です。
--std-ruby=PATHRuby 標準ライブラリへのパス
--site-ruby=PATH
site_ruby へのパス
--bin-dir=PATH実行可能ファイル(コマンド)をインストールするパス
--rb-dir=PATHRuby ライブラリをインストールするパス
--so-dir=PATHRuby の拡張モジュールをインストールするパス
--data-dir=PATHその他のデータファイルをインストールするパス
--ruby-path=PATH
#! 行 (shebang) にセットする Ruby インタプリタのパス。
(実行するときに使う ruby プログラムへのパス)
--ruby-prog=PATH
インストールに使う ruby プログラムへのパス
--make-prog=NAME
拡張モジュールのコンパイルに使用する make プログラム
--without-ext拡張モジュールのコンパイル・インストールを無条件に スキップする。ただし当然ながら、インストールされる プログラム自体が拡張モジュールなしで動くようになって いなければ意味がありません。
--rbconfig=PATH
デフォルト値の設定に使う rbconfig.rb
値を取るオプションはすべて --opt=value の形で指定します。
「=」のまわりに空白を入れてはいけません。各オプションの
デフォルト値は ruby install.rb --help で見られます。
また setup.rb ではこれに加えて以下のオプションも使えます。
--with=NAME,NAME,NAME...インストールするパッケージ
--without=NAME,NAME,NAME...インストールしないパッケージ
また install.rb / setup.rb のどちらでも、次のように
「--」(マイナス二つ)に続けてオプションを指定することで
extconf.rb に引数を渡すことができます。
ruby install.rb config -- --with-tklib=/usr/lib/libtk-ja.so.8.0
install のタスクオプション--no-harm挙動を表示するだけで実行しません。
config install 以外のコマンドにはオプションはありません。
なにか渡すとすべてエラーになります。