Rational Developer for System z
COBOL for Windows バージョン 7.5 プログラミング・ガイド


cob2 オプション

cob2 のオプションを指定するには、先頭にハイフン (-) を付けます。 cob2 を使用してリンカーにオプションを渡す場合以外は、スラッシュ (/) をオプションに使用しないでください。 cob2 コマンドで指定するオプションのうち、 以下にリストされていないものはリンカーに渡されます。

コンパイルに適用されるオプション

-c
プログラムをコンパイルしますが、リンクしません。
-comprc_ok=n
コンパイラーからの戻りコードに基づいて動作を制御します。戻りコードが n 以下であれば、cob2 は継続してリンク・ステップに進むか、またはコンパイルのみの場合には、ゼロの戻りコードで終了します。コンパイラーで生成された戻りコードが n より大きい場合は、cob2 は同じ戻りコードで終了します。

デフォルトは -comprc_ok=4 です。

-dll[:xxx]
cob2 を使用してリンカー・ファイル (.LIB および .EXP) を生成し、xxx という名前の DLL を作成します。xxx を省略した場合は、cob2 コマンドで指定されたオブジェクト・ファイル (.OBJ) または COBOL ソース・ファイル (通常は .CBL) の名前が、DLL (.LIB および .EXP ファイルも同様) の名前になります。
-host
ホスト COBOL データ表現と言語セマンティクスに対してコンパイラー・オプションを設定します。

また、以下に参照される関連タスクで説明されているように、-host オプションはコマンド行引数の形式にも影響を与えます。

-Ixxx
library-name が指定されていない場合に、コピーブックの検索に使用するディレクトリーへのパス xxx を追加します。(このオプションは、小文字の l ではなく大文字の I です。)

-I オプションに使用できるパスは 1 つだけです。複数のパスを追加するには、-I オプションを必要な数だけ使用してください。Ixxx の間にスペースを入れないでください。

COPY ステートメントを使用する場合には、LIB コンパイラー・オプションを必ず有効にしなければなりません。

-qxxx
コンパイラーにオプションを渡します。xxx には任意のコンパイラー・オプションが入ります。-qxxx の間にスペースを入れないでください。

コンパイラー・オプションまたはサブオプションに括弧が含まれている場合や、一連のオプションが指定されている場合には、各オプションを引用符で囲みます。

複数のオプションを指定する場合は、各オプションをブランクまたはコンマで区切ります。例えば、次の 2 つのオプション・ストリングは同じです。

-qoptiona,optionb

-q“optiona optionb”

リンクに適用されるオプション

-b“xxx
ストリング xxx をパラメーターとしてリンカーに渡します。xxx は、スペース区切りのリンカー・オプション・リストです。また、cob2 のデフォルト・パラメーターも渡されます。-b の直後にスペースを使用しないでください。

別の方法として、リンカー・オプションを個々の cob2 オプションとして直接指定することも可能です。例えば、/DE オプションをリンカーに渡すには、次のコマンドを使用します。

cob2 /DE myprog.cbl
-cmain
メインルーチンを含む C または PL/I オブジェクト・ファイルを、実行可能ファイル (.EXE) 内のメインの入り口点にします。C の場合、メインルーチンは関数名 main() で識別されます。PL/I の場合、メインルーチンは PROC OPTIONS(MAIN) ステートメントで識別されます。

リンクする C または PL/I オブジェクト・ファイルに、1 つ以上の COBOL オブジェクト・ファイルを持つメインルーチンが含まれている場合は、-cmain を使用して、Cまたは PL/I ルーチンを実行可能ファイル内のメインの入り口点として指定する必要があります。C または PL/I メインプログラムを含む実行可能ファイル内のメインの入り口点として、COBOL プログラムを指定することはできません。これを行うと、予測不能な動作が発生し、診断は行われません。

例えば、次の 2 つのコマンドは同じです。

cob2 -cmain myCmain.obj myCOBOL.obj

cob2 -cmain myCOBOL.obj myCmain.obj -main:myCmain

どちらのコマンドも、実行可能ファイル myCmain.exe を生成します。メインの入り口点は、myCmain.obj オブジェクト・ファイルに含まれる C main() 関数です。

 

このオプションは、ランタイム・コマンド行引数をホストのデータ形式 (つまり、文字データの場合は EBCDIC、2 進数データの場合はビッグ・エンディアン) で示します。

-imp:xxx.lib
xxx.lib がインポート・ライブラリーであり、 標準ライブラリーではないことを示します。この値は、生成済み ILINK コマンドで渡され、 生成済み ILIB コマンドでは渡されません。
-main:xxx
オブジェクト・ファイル xxx を実行可能ファイル (.EXE) のメインプログラムにします。xxx は、cob2 に指定されたオブジェクト・ファイル (.OBJ) または COBOL ソース・ファイルの名前でなければなりません。xxx をリンカー応答ファイル内に使用することはできません。 例えば、次のコマンドは abc をメインプログラムにします。

cob2 -main:abc a1.cbl d:\cats\abc.obj b2.cbl

-main を指定しない場合は、最初に指定されたオブジェクト・ファイルまたはソース・ファイルが COBOL メインプログラムになります (リンカー応答ファイルなし)。

-main:xxx の構文が無効な場合や、xxxcob2 によって処理されるオブジェクト・ファイルまたはソース・ファイルのファイル名でない 場合は、cob2 が終了します。

-s:0xnnnnnnnn
リンカーに nnnnnnnn バイトのスタック・スペースを実行可能プログラムに割り振る ように指示します (ここで nnnnnnnn は、16 進数です)。 このスペースは、非常に大きな定義済みデータ項目を持つプログラムで、 特に LOCAL-STORAGE SECTION にデータ項目のあるプログラムを実行するために必要になる場合があります。
/HEAP:0xnnnnnnnn
リンカーに nnnnnnnn バイトの静的ユーザー・データ用のヒープ・スペースを割り振るように指示します (ここで nnnnnnnn は、16 進数です)。 (デフォルト値は 0x100000 で最大は 0xfffffffe です。) このスペースは、非常に大きな定義済みデータ項目を持つプログラムで、 特に WORKING-STORAGE SECTION にデータ項目のあるプログラムを実行するために必要になる 場合があります。

コンパイルとリンクの両方に適用されるオプション

-g
デバッガーで使用されるシンボリック情報を生成します。このオプションは、TEST コンパイラー・オプションを使用してコンパイルを実行し、/DEBUG リンカー・オプションを使用してリンクを実行することと同じです。
-h
cob2 ヘルプ・テキストを表示します。
-v
コンパイルおよびリンクのステップを表示し、各ステップを実行します。
-#
コンパイル・ステップとリンク・ステップを表示しますが、それらを実行しません。
-?, ?
cob2 ヘルプ・テキストを表示します。

関連タスク
コマンド行引数の使用

関連参照
cob2 でサポートされるファイル名および拡張子
コンパイラー環境変数
ランタイム環境変数


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)