j
= setup.rb を使ったプログラムのインストール

この文書ではエンドユーザが setup.rb を使って
パッケージをインストールする方法を説明します。
e
= Installing Programs with setup.rb
.

j
== 最も単純な方法

通常は次の三行で十分です。
（# の行ではおそらくスーパーユーザ権限が必要でしょう）
--
$ ruby setup.rb config
$ ruby setup.rb setup
# ruby setup.rb install
--
config は設定の変更、setup がコンパイル、
install で実際のインストールを行います。
e
== Quick Start

Type these lines on command line:
("#" line may require root privilege)
--
$ ruby setup.rb config
$ ruby setup.rb setup
# ruby setup.rb install
--
.

j
== 詳しい解説

以下、もう少し詳細に説明します。setup.rb にはグローバル
オプションとコマンド、そしてコマンド専用のオプションが
あります。組みあわせとしては以下のようになります。
--
ruby setup.rb グローバルオプション
ruby setup.rb コマンド
ruby setup.rb コマンド コマンドオプション
--
CVS を知っている人は cvs コマンドに似たようなものだと思ってください。
e
== Details

Usage of setup.rb is:
--
ruby setup.rb <global options>
ruby setup.rb [<global options>] <task> [<task options>]
--
.

j
=== グローバルオプション
e
=== Global Options
.

: -q,--quiet
j
    メッセージ出力を最小限にする
e
    suppress message outputs
.
: --verbose
j
    実行中の状況を詳細に表示する (デフォルトはオン)
e
    output messages verbosely (default)
.
: -h,--help
j
    setup.rb の使いかたなどを表示
e
    prints help and quit
.
: -v,--version
j
    setup.rb のバージョンを表示
e
    prints version and quit
.
: --copyright
j
    setup.rb の著作権を表示
e
    prints copyright and quit
.

j
コマンドは以下の五つです。
e
These are acceptable tasks:
.
: config
j
    設定をチェックしたうえで保存する
e
    Checks and saves configurations.
.
: show
j
    現在の設定を表示する
e
    Prints current configurations.
.
: setup
j
    コンパイルなど、ファイル内容の変更を行うもの
e
    Compiles ruby extentions.
.
: install
j
    インストールを行う。
e
    Installs files.
.
: clean
j
    setup で作成したものを消す
e
    Cleans created files.
.
: distclean
j
    setup で作成したものを消す (より強力)
e
    Cleans created files.
.

j
続いて順次コマンドのオプションを解説します。

=== config のタスクオプション
e
=== Task Options for CONFIG
.

: --prefix=PATH
j
    --rb-dir --so-dir などの共通部分
e
    a prefix of the installing directory path
.
: --std-ruby=PATH
j
    Ruby 標準ライブラリをインストールするディレクトリ
e
    the directory for standard ruby libraries
.
: --site-ruby-common=PATH
j
    バージョンに依存しない、非標準の Ruby ライブラリを
    インストールするディレクトリ (site_ruby)
e
    the directory for version-independent non-standard
    ruby libraries
.
: --site-ruby=PATH
j
    バージョンつき site_ruby へのパス
e
    the directory for non-standard ruby libraries
.
: --bin-dir=PATH
j
    実行可能ファイル（コマンド）をインストールするパス
e
    the directory for commands
.
: --rb-dir=PATH
j
    Ruby ライブラリをインストールするパス
e
    the directory for ruby scripts
.
: --so-dir=PATH
j
    Ruby の拡張モジュールをインストールするパス
e
    the directory for ruby extentions
.
: --data-dir=PATH
j
    その他のデータファイルをインストールするパス
e
    the directory for shared data
.
: --ruby-path=PATH
j
    #! 行 (shebang) にセットする Ruby インタプリタのパス。
    (実行するときに使う ruby プログラムへのパス)
e
    path to set to #! line
.
: --ruby-prog=PATH
j
    インストールに使う ruby プログラムへのパス
e
    the ruby program using for installation
.
: --make-prog=NAME
j
    拡張モジュールのコンパイルに使用する make プログラム
e
    the make program to compile ruby extentions
.
: --without-ext
j
    拡張モジュールのコンパイル・インストールを無条件に
    スキップする。ただし当然ながら、インストールされる
    プログラム自体が拡張モジュールなしで動くようになって
    いなければ意味がありません。
e
    forces to setup.rb never to compile/install
    ruby extentions.
.
: --rbconfig=PATH
j
    デフォルト値の設定に使う rbconfig.rb
e
    your rbconfig.rb to load
.

j
値を取るオプションはすべて --opt=value の形で指定します。
「=」のまわりに空白を入れてはいけません。各オプションの
デフォルト値は ruby setup.rb --help で見られます。
e
You can view default values of these options by typing
--
$ ruby setup.rb --help
--
.

j
またマルチパッケージアーカイブではこれに加えて以下のオプションも使えます。
e
If there's the directory named "packages",
You can also use these options:
.
: --with=NAME,NAME,NAME...
j
    インストールするパッケージ
e
    Package names which you want to install.
.
: --without=NAME,NAME,NAME...
j
    インストールしないパッケージ
e
    Package names which you do not want to install.
.

j
また「--」（マイナス二つ）に続けてオプションを指定することで
extconf.rb に引数を渡すことができます。
e
[NOTE] You can pass options for extconf.rb like this:
.
--
ruby setup.rb config -- --with-tklib=/usr/lib/libtk-ja.so.8.0
--

j
=== install のタスクオプション
e
=== Task Options for INSTALL
.

: --no-harm
j
    挙動を表示するだけで実行しません。
e
    prints what to do and done nothing really.
.
: --prefix=PATH
j
    config で決定したパスの先頭にさらに PATH を付加します。
    config --prefix がプログラムが実行されるときのパスであるのに
    対し、install --prefix はプログラムファイルをコピーするパスを
    指定します。主に RPM などのバイナリパッケージ作成用です。
    デフォルトは空文字列です。
e
    The prefix of the installing directory path.
    This option may help binary package maintainers.
    A default value is an empty string.
.
