10.2 Options

ocamlrun に認識されるコマンドラインオプションは以下の通りです。

-b

プログラムがキャッチされない例外で異常終了するとき、例外の詳細な「バックトレース」を表示します。どこで例外が発生して、どの関数から飛び出したかがわかります。バックトレースはバイトコード実行ファイルがデバッグ情報がついているときのみ表示されます (つまり ocamlc に -g オプション付きでコンパイル、リンクされているとき) 。このオプションは環境変数 OCAMLRUNPARAM (後述) に b フラグをセットするのと同値です。

-I dir

動的にロードするライブラリを検索しにいく標準検索パスに、与えられたディレクトリを追加します (セクション 10.3 を見てください) 。

-v

メモリ管理機構が進捗メッセージを標準エラー出力へ表示するようになります。環境変数 OCAMLRUNPARAM (後述) に v=63 を設定するのと同値です。

-version

バージョンを表示して終了します。

以下の環境変数も参照します。

CAML_LD_LIBRARY_PATH

動的ロードライブラリの検索パスに追加します (セクション 10.3 を見てください) 。

OCAMLLIB

Objective Caml 標準ライブラリのあるディレクトリです (OCAMLLIB が設定されていなかったら代わりに CAMLLIB を使用します) 。動的ロードの設定ファイル ld.conf の位置を特定するために使用します (セクション 10.3 を見てください) 。設定されていなかったら、Objective Caml のコンパイル時に指定したデフォルトの標準ライブラリパスを使用します。

OCAMLRUNPARAM

ランタイムシステムのオプションやガベージコレクションのパラメータを設定します (OCAMLRUNPARAM が設定されていなかったら代わりに CAMLRUNPARAM を使用します) 。この環境変数はパラメータ指定の列にしてください。パラメータ指定はオプション文字に続いて = 記号、10 進数字、マルチプライヤ (これはなくてもよい) となります。9 個のオプションがあり、そのうち 6 個が Module Gc で説明されている control レコードのフィールドに対応します。

b

(バックトレース) キャッチされない例外でプログラムが異常終了するとき、バックトレーススタックを表示します。このオプションは引数をとりません。

p

(構文解析器トレース) ocamlyacc で生成した構文解析器のデバッグ補助を有効にします。このオプションが有効ならば、構文解析を行うプッシュダウンオートマトンがそのアクションをトレースするようになります。このオプションは引数をとりません。

s

(minor_heap_size) マイナーヒープのサイズ。

i

(major_heap_increment) メジャーヒープのメモリ増加量の最小サイズ。

o

(space_overhead) メジャー GC の速度設定。

O

(max_overhead) ヒープ圧縮の頻度設定。

v

(verbose) GC が何のメッセージを標準エラー出力に表示するか設定します。これには以下から選択してその和を指定します。

1 (= 0b0000000001)

メジャーGCの開始.

2 (= 0b0000000010)

マイナーコレクションとメジャーGCのスライス。

4 (= 0b0000000100)

ヒープの増減。

8 (= 0b0000001000)

スタックとメモリマネージャーテーブルのリサイズ。

16 (= 0b0000010000)

ヒープ圧縮。

32 (= 0b0000100000)

GCパラメータの変更。

64 (= 0b0001000000)

メジャーGCスライスのサイズ計算

128 (= 0b0010000000)

ファイナライズ関数の呼び出し時

256 (= 0b0100000000)

スタートアップメッセージ。(バイトコードが読み込まれ、共有ライブラリが解決された時)

l

(stack_limit) スタックサイズの制限 (ワード単位) 。

h

メジャーヒープの初期サイズ (ワード単位) 。

マルチプライヤは k 、M 、G のいずれかです。それぞれ 210 倍、220 倍、230 倍になります。たとえば 32 ビットマシンで、bash で以下のコマンド

export OCAMLRUNPARAM='b,s=256k,v=1'

を実行したあと ocamlrun を実行すると、キャッチされない例外でバックトレースを表示して、マイナーヒープの初期サイズを 1 メガバイトに設定して、メジャー GC サイクルが開始するたびにメッセージが表示されるようになります。

CAMLRUNPARAM

OCAMLRUNPARAMが見つからない場合、CAMLRUNPARAMが代わりに用いられます。CAMLRUNPARAMも見つからない場合は、デフォルト値が用いられます。

PATH

バイトコード実行ファイルを検索するディレクトリのリストです。