COBOL2002 ユーザーズガイド
-Main,{System|V3} ファイル名
最外側のプログラムをアプリケーションの主プログラムとしてコンパイルします。
ファイル中に複数の最外側のプログラムがあるときは,先頭の最外側のプログラムを主プログラムとしてコンパイルします。
- -Main,System ファイル名(System指定メインプログラム)
- 最外側のプログラムをアプリケーションの主プログラムとしてコンパイルします。
- このとき,主プログラムが制御プログラムから受け取る引数の形式を,システム固有のargc,argv形式に合わせます。
- なお,開発マネージャでは,プロジェクトの種類で「System指定メインプログラム」を選び,「メインファイルを指定する」オプションにメインファイルを指定すると,-Main,Systemオプションが指定されます。
- -Main,V3 ファイル名(V3指定メインプログラム)
- 最外側のプログラムをアプリケーションの主プログラムとしてコンパイルします。
- このとき,主プログラムが制御プログラムから受け取る引数の形式を,メインフレーム(VOS3)に合わせます。
- なお,開発マネージャでは,プロジェクトの種類で「V3指定メインプログラム」を選び,「メインファイルを指定する」オプションにメインファイルを指定すると,-Main,V3オプションが指定されます。
- -Main,Systemオプションまたは-Main,V3オプションの指定がない場合で,次の条件をすべて満たすときには,先頭のCOBOLソースファイルに-Main,Systemオプションを指定したものと仮定されます。
- -Compileオプションの指定がなく,かつ,オブジェクトファイル(.obj)の指定がない。
- -SimMainオプションの指定がない。
- -Mainオプションと-MainNotCBLオプションまたは-Dllオプションを同時に指定した場合,-Mainオプションが無効となります。
- (例)
- -MainNotCBL -Main,System
- と指定した場合,-MainNotCBLオプションが有効となり,-Mainオプションは無効となります。
- -Main,Systemオプション,-Main,V3オプションについては,「17.2 引数の受け取りと外部スイッチ」の記述も参照してください。
- このオプションは,直後に指定されたファイルをアプリケーションの主プログラムとして扱います。
- -Main,V3オプションを指定して作成した実行可能ファイルを実行するとき,受け取れるコマンド引数は一つ(空白まで)です。コマンド引数に空白を含むときは,引用符( " )で囲みます。
開発マネージャ上でプロジェクトをビルドする場合に,メインのCOBOLソースファイルを指定しないとき,このオプションを指定します。「メインプログラムなし」を指定したプロジェクトは,メインプログラムのオブジェクトファイルまたはライブラリを,プロジェクトに登録する必要があります。
このコンパイル方式を選んだ場合で,作成しようとしているCOBOLプログラムが次の二つの条件を満たすときは,-MainNotCBLオプションを指定する必要があります。
- 最初に呼び出されるCOBOLプログラムより前に,他言語で記述されたプログラムが実行される場合
- 最初に呼び出されるCOBOLプログラムから,呼び出し元プログラムに戻る場合
このプロジェクトの種類で指定できるオプションは,-Main,Systemオプション(System指定メインプログラム)または-Main,V3オプション(V3指定メインプログラム)を指定して実行可能ファイルを生成する場合に準じますが,次のオプションは指定できません。
「メインファイルを指定する」
このオプションは,開発マネージャだけで指定できます。
-Dll,{Stdcall|Cdecl}
-Dll
-noDll
DLL形式のオブジェクトファイルを出力します。-Dllオプションを指定しない場合は,実行可能ファイル(.exe)形式のオブジェクトファイルを出力します。
-Dllオプションを指定した場合,同時に指定したCOBOL原始プログラムは,すべてDLL形式のオブジェクトファイルとなります。
なお,開発マネージャでは,「-Dll指定(DLLを作成する)」を選ぶと,-Dllオプションが指定されます。
- -Dll,Stdcall(Dllの属性をstdcallにする)(32bit版PC(x86) COBOL2002で有効)
- DLLの属性をstdcallにします。
- なお,開発マネージャでは,「-Dll指定(DLLを作成する)」と合わせて「Dllの属性をstdcallにする」を選ぶと,-Dll,Stdcallオプションが指定されます。
- -Dll,Cdecl(Dllの属性をcdeclにする)(32bit版PC(x86) COBOL2002で有効)
- DLLの属性をcdeclにします。
- なお,開発マネージャでは,「-Dll指定(DLLを作成する)」と合わせて「Dllの属性をcdeclにする」を選ぶと,-Dll,Cdeclオプションが指定されます。
- -Dll( Dllの属性をfastcallにする)(64bit版PC(x64) COBOL2002で有効)
- DLLの属性をfastcallにします。
- -noDll
- -Dllオプションの指定を打ち消します。
- -Dllオプションを指定すると,-Main,System,-Main,V3,および-SimSubオプションが無効となります。
- 64bit版PC(x64) COBOL2002の場合,-Dll,Stdcallオプション,または-Dll,Cdeclオプションを指定しても,-Dllオプションを指定したとみなされ,DLLの属性はfastcallになります。
(4) -OleServerオプション(32bit版PC(x86) COBOL2002で有効)
-OleServer,{Dll|Exe}〔,RegSet〕
-noOleServer
OLE2サーバを生成したい場合に指定するオプションです。詳細は,「26.3 OLE2オートメーションサーバの作成と利用(32bit版PC(x86) COBOL2002で有効)」を参照してください。
- -OleServer,Dll(OLEインプロセスサーバプログラム)
- OLE2サーバをインプロセスサーバ(.DLL)として生成します。
- なお,開発マネージャでは,「OLEインプロセスサーバプログラム」を選ぶと,このオプションが指定されます。
- -OleServer,Exe(OLEアウトオブプロセスサーバプログラム)
- OLE2サーバをアウトオブプロセスサーバ(.EXE)として生成します。
- なお,開発マネージャでは,「OLEアウトオブプロセスサーバプログラム」を選ぶと,このオプションが指定されます。
- -OleServer,xxxxx,RegSet
- コンパイル時,OLE2サーバをレジストリへ自動登録します。
- xxxxxには,Dll,Exeのどちらかを指定します。
- なお,開発マネージャでは,「OLEインプロセスサーバプログラム」または「OLEアウトオブプロセスサーバプログラム」のサブオプション「RegSet」を選ぶと,このオプションが指定されます。
- -noOleServer
- -OleServerオプションの指定を打ち消します。
- -OleServer,Dllオプションを指定した場合,-Dll,Stdcallオプションが仮定されますが,-noOleServerオプションを指定しても,仮定された-Dll,Stdcallオプションは打ち消されません。
- -OleServer,Dllオプションを指定すると,-Dll,Stdcallオプションが仮定されます。
- -OleServer,Dllオプションと-Dll,Cdeclオプションを同時に指定すると,-Dll,Cdeclオプションが無効となります。
- -OleServer,Dllオプションは,次のオプションと同時に指定できません。同時に指定した場合,次のオプションが無効となります。
-Lib,CUI -SimMain -BigEndian -Bin1Byte -EquivRule
-V3Rec -MultiThread -V3RecFCSpace -V3RecEased
- -OleServer,Exeオプションを指定すると,-MainNotCBLオプションが仮定されます。
- -OleServer,Exeオプションと-Dllオプションは,同時に指定できません。同時に指定した場合,あとに指定したオプションが有効となります。
- -OleServer,Exeオプションは,次のオプションを同時に指定できません。同時に指定した場合,次のオプションが無効となります。
-Lib,CUI -SimMain -BigEndian -Bin1Byte -EquivRule
-V3Rec -MultiThread -V3RecFCSpace -V3RecEased
- 開発マネージャで,「OLEアウトオブプロセスサーバプログラム」または「OLEインプロセスサーバプログラム」のプロジェクトには,XMLデータ定義ファイルを追加できません。
詳細は,マニュアル「COBOL2002 XML連携機能ガイド」を参照してください。
- Windows Vista以降のOSでは,-OleServerオプションは未サポートのため,指定できません。
(5) CGIメインプログラム(32bit版PC(x86) COBOL2002で有効)
COBOLソースからCGIプログラムを作成します。
この項目を指定した場合,次の機能が使用できるようになります。
- COBOL CGIプログラム作成支援機能
- COBOLソースとHTMLファイルの関連づけ
また,CGIメインプログラムを指定した場合,-Lib,CUIオプションが指定され,コンソールプログラムとして生成されます。
プロジェクトの作成時,プロジェクトの種類で「CGIメインプログラム」を選んだ場合,この項目が指定されます。
このオプションは,開発マネージャだけで指定できます。
- 注意事項
- 一度「CGIメインプログラム」を選んだあと,ほかのプロジェクトの種類を選び直した場合,-Lib,CUIオプションが指定されたままの状態になるので注意してください。
COBOLソースから標準ライブラリを作成します。
プロジェクトの作成時に,最終生成物の種類で「標準ライブラリ」を選んだ場合,この項目が指定されます。
このプロジェクトによって生成された標準ライブラリをリンクする実行可能プログラムが次の条件を満たす場合,-MainNotCBLオプションを指定する必要があります。
- 最初に呼び出されるCOBOLプログラムより前に,他言語で記述されたプログラムが実行される場合
- 最初に呼び出されるCOBOLプログラムから,呼び出し元プログラムに戻る場合
このプロジェクトの種類を選んだ場合,プロジェクトに指定できるオプションは-Main,Systemまたは-Main,V3オプションを指定した場合と同じです。ただし,次のオプションは指定できません。
-SimMain,-SimSub,-SimIdent,-Lib,「リンク処理をしない」,「メインファイルを指定する」
このオプションは,開発マネージャだけで指定できます。
All Rights Reserved. Copyright (C) 2013, 2016, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2002, 2011, Microsoft Corporation.