COBOL2002 ユーザーズガイド


35.1.3 コンパイルとリンクを実行する場合の注意事項

コンパイルとリンクを同時に実行する場合,および別々に実行する場合の注意事項について説明します。

〈この項の構成〉

(1) COBOLプログラムとCプログラムをリンクする場合の注意事項

COBOLプログラムとCプログラムをリンクする場合は,C実行時ライブラリに,マルチスレッドに対応したダイナミックリンクライブラリを使用する必要があります。

(2) 標準ライブラリを使用する場合の注意事項

(3) オブジェクトファイルを別環境でリンクする場合の注意事項

(4) マニフェストのUAC情報を変更する場合の注意事項

ccbl2002コマンドを使用して実行可能ファイルを作成するとき,COBOL2002コンパイラは埋め込むマニフェストにUAC情報を指定するセクションを挿入します。既定のアクセス許可レベルはasInvokerです。このアクセス許可レベルを変更したいときは,-Linkコンパイラオプションに-MANIFESTUACリンカオプションを指定してアクセス許可レベルの値を設定してください。-MANIFESTUACリンカオプションの詳細については,「38.1.3 オプション」の「(14) -MANIFESTUAC〔:{NO|UACフラグメント}〕」を参照してください。

管理者のアクセス許可レベルで実行するように指定する例を次に示します。

ccbl2002 -Main,System TEST01.cbl -OutputFile TEST02.exe 
-Link -MANIFESTUAC:level='requireAdministrator'

(5) ccbl2002コマンドによるリンク時にエラーが発生した場合

ccbl2002コマンドまたはccblコマンドから呼び出すLINKコマンドやMTコマンドは,出力ファイルがOSやウィルスチェッカなどから一時的に共有されることが原因で,エラーになることがあります。この場合,時間をおいて再コンパイルしてください。時間をおいても問題が解決しないときは,次のどちらかの方法で対処してください。

(6) 実行可能ファイル,DLLファイルの名称の注意事項

実行可能ファイル,またはDLLファイルの名称に「;」および「@」は指定しないでください。作成する実行可能ファイル,またはDLLファイルの名称に「;」および「@」が含まれていると,MTコマンドでエラーとなりマニフェストの埋め込みに失敗します。