エントリ ポイント

複数の COBOL プログラムを連結して、1 つの呼び出し可能な共有オブジェクトにすることができます。この方法では、COBOL プログラム間の参照はすべて直接参照を使用して解決できます。この場合、動的ローダーを使用して検索してから他のモジュールをロードする必要がないため効率的です。たとえば、次のコマンドでは、すべての COBOL プログラムがコンパイルされ、互いにリンクされて、myprog.so が作成されます。主エントリ ポイントは myprog です。これは、指定された最初の COBOL プログラム myprog.cbl の主エントリ ポイントになります。

cob -z myprog.cbl subprog.cbl entry.cbl

作成された呼び出し可能な共有オブジェクトの名前は、cob の -o フラグを使用して指定できます。たとえば、次のコマンドでは、すべての COBOL プログラムがコンパイルされ、互いにリンクされて、entry.so が作成されます。この場合、呼び出し可能な共有オブジェクトのベース名 entry が主エントリ ポイントとして使用されます。つまり、entry は entry.cbl の主エントリ ポイントとなります。

cob -zo entry.so myprog.cbl subprog.cbl entry.cbl

エントリ ポイントも、cob の -e オプションを使用して指定できます。この機能は、作成したアプリケーションの名前が、ソース プログラムのファイル名と異なる場合に役立ちます。たとえば、次のコマンドでは、すべての COBOL プログラムがコンパイルされ、互いにリンクされて、myapp.so が作成されます。主エントリ ポイントには entry が指定されています。これは、entry.cbl の主エントリ ポイントとなります。-e オプションを使用すると、任意の COBOL プログラムの任意のエントリ ポイントを指定できます。

cob -zo myapp.so myprog.cbl subprog.cbl entry.cbl -e entry

-e オプションを指定しないと、呼び出し可能な共有オブジェクトのベース名が、主エントリ ポイントとして使用されます。主エントリ ポイントが実行時に検出されないと、呼び出し可能な共有オブジェクトはロードされず、ランタイム ロード エラーになります。