4.1.2.5 実行可能オブジェクトの作成

次のステップは、コンパイルされたソースを入力として実行可能オブジェクトを作成することです。作成されたオブジェクト・モジュールをアプリケーション・ライブラリにロードすることで、CICS/ESAリージョン・データセットと連結します。

次のCOBOLおよびCプログラムの例において、SYSLINは、コンパイルされたソースとその他の必要な実行可能ファイル(CICS API verb用インタフェース、CPI-C verb用インタフェースおよびSNAのリソース・リカバリverb(同期レベル2)用インタフェースなど)を連結したファイルの名前です。

次のリストでは、モジュールは再入可能としてリンクされ、31ビット・モードのアドレス機能を持つものとしてマークされます。このアクションは、CPI-CおよびSAAのリソース/リカバリ・リクエストを実行するMIRRDTPCモジュールでは必須です。

NAMEは、生成する実行可能ファイルの名前に変更する必要があります。

リスト TOUPDPLS、TOUPDTPSおよびMIRRDPLCのCOBOLリンク編集サンプル

//LKED     EXEC PGM=IEWL,    * ** LINKAGE EDITOR **
//              PARM=AMODE=31,RENT,
//              REGION=512K
//SYSPRINT  DD SYSOUT=*
//SYSLIN         DD DSN=&&LOADSET,DISP=(OLD,DELETE)
//               DD *
//          INCLUDE SYSLIB(DFHECI)
//          ORDER DFHECI
//                 NAME xxxxxxxx(R)
/*
//SYSLIB     DD DSN=CICSxxx.SDFHLOAD,DISP=SHR
//           DD DSN=CICSxxx.SDFHCOB,DISP=SHR
//           DD DSN=SYS1.SCEELKED,DISP=SHR
//           DD DSN=SYS1.SIGYCOMP,DISP=SHR
//SYSLMOD    DD DSN=application.loadlib,DISP=(SHR,PASS)
//SYSUT1     DD UNIT=VIOD,SPACE=(1024,(50,20))
//

リスト MIRRDTPCのCOBOLリンク編集サンプル

//LKED       EXEC PGM=IEWL,     * ** LINKAGE EDITOR **
//                PARM=AMODE=31,RENT,
//                REGION=512K
//SYSPRINT  DD SYSOUT=*
//SYSLIN        DD DSN=&&LOADSET,DISP=(OLD,DELETE)
//              DD *
//     INCLUDE SYSLIB(DFHECI)
//     INCLUDE SYSLIB(DFHCPLC)
//     INCLUDE SYSLIB(DFHCPLRR)
//     ORDER DFHECI
//            NAME xxxxxxxx(R)
/*
//SYSLIB       DD DSN=CICSxxx.SDFHLOAD,DISP=SHR
//             DD DSN=CICSxxx.SDFHCOB,DISP=SHR
//             DD DSN=SYS1.SCEELKED,DISP=SHR
//             DD DSN=SYS1.SIGYCOMP,DISP=SHR
//SYSLMOD      DD DSN=application.loadlib(xxxxxxxx),DISP=(SHR,PASS)
//SYSUT1       DD UNIT=VIOD,SPACE=(1024,(50,20))
//

リスト Cのリンク編集サンプル

//LKED       EXEC PGM=HEWL,REGION=4M,
//           PARM='AMODE=31,RENT,
//           COND=((7,LT,C),(7,LT,PLKED),(7,LT,TRN))
//SYSLIB     DD DSN=CICSxxx.SDFHLOAD,DISP=SHR
//           DD DSN=SYS1.SCEELKED,DISP=SHR
//SYSLIN     DD DSN=&&LOADSET,DISP=(OLD,DELETE)
//           DD *INCLUDE SYSLIB(DFHELII)
//        INCLUDE SYSLIB(DFHCPLC)
//        INCLUDE SYSLIB(DFHCPLRR)NAME xxxxxxxx(R)
/*
//SYSLMOD    DD DSN=application.loadlib(xxxxxxxx),DISP=SHR
//SYSUT1     DD UNIT=VIOD,SPACE=(1024,(50,20))
//SYSPRINT   DD SYSOUT=*