Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

コンパイル、プリリンク、ロード、および実行 (IBMZCPG)

図 13 の IBMZCPG カタログ式プロシージャーでは、IBMZCPLG と 同じ結果が得られますが、リンケージ・エディターではなくローダー が使用されます。 また、プロシージャー・ステップの数は 4 つ (コンパイル、プリリンク、リンク・エディット、 実行) ではなく、3 つ (コンパイル、プリリンク、ロード/実行) しかありません。3 番目のプロシージャー・ステップはローダー・プログラムを実行します。 ローダー・プログラムは、コンパイラーが作成したオブジェクト・モジュール を処理し、結果の実行可能プログラムをすぐに実行します。 コンパイル・ステップ用の入力データは、修飾 dd 名 PLI.SYSIN を提供して ユーザーが提供する必要があります。

ローダーを使用すると、PL/I プログラムに対していくつかの制約が 課せられます。このカタログ式プロシージャーを使用する前に、 ローダーの使用方法を説明した「z/OS 言語環境プログラム プログラミング・ガイド」を参照してください。

図 13. カタログ式プロシージャー IBMZCPG
//IBMZCPG PROC LNGPRFX='IBMZ.V3R8M0',LIBPRFX='CEE',
//             SYSLBLK=3200,PLANG=EDCPMSGE
//*
//********************************************************************
//*                                                                  *
//* LICENSED MATERIALS - PROPERTY OF IBM                             *
//*                                                                  *
//* 5655-H31 (C) COPYRIGHT IBM CORP. 1999, 2008                      *
//* ALL RIGHTS RESERVED.                                             *
//*                                                                  *
//* US GOVERNMENT USERS RESTRICTED RIGHTS - USE,                     *
//* DUPLICATION OR DISCLOSURE RESTRICTED BY GSA                      *
//* ADP SCHEDULE CONTRACT WITH IBM CORP.                             *
//*                                                                  *
//********************************************************************
//*
//* IBM ENTERPRISE PL/I FOR Z/OS
//* VERSION 3 RELEASE 8 MODIFICATION 0
//*
//*  COMPILE, PRELINK, LOAD AND RUN A PL/I PROGRAM
//*
//*  PARAMETER  DEFAULT VALUE    USAGE
//*   LNGPRFX   IBMZ.V3R8M0      PREFIX FOR LANGUAGE DATA SET NAMES
//*   LIBPRFX   CEE              PREFIX FOR LIBRARY DATA SET NAMES
//*   SYSLBLK   3200             BLKSIZE FOR OBJECT DATA SET
//*   PLANG     EDCPMSGE         PRELINKER MESSAGES MEMBER NAME
//*
//*********************************************************************
//* COMPILE STEP
//*********************************************************************
//PLI      EXEC PGM=IBMZPLI,PARM='OBJECT,OPTIONS'
//STEPLIB  DD  DSN=&LNGPRFX;.SIBMZCMP,DISP=SHR
//         DD  DSN=&LIBPRFX;.SCEERUN,DISP=SHR
//SYSPRINT DD  SYSOUT=*
//SYSOUT   DD  SYSOUT=*
//SYSLIN   DD  DSN=&&LOADSET,DISP=(MOD,PASS),UNIT=SYSALLDA,
//             SPACE=(CYL,(1,1)),DCB=(LRECL=80,BLKSIZE=&SYSLBLK)
//SYSUT1   DD  DSN=&&SYSUT1,UNIT=SYSALLDA,
 //             SPACE=(1024,(200,50),,CONTIG,ROUND),DCB=BLKSIZE=1024
//*********************************************************************
//* PRE-LINK-EDIT STEP
//*********************************************************************
//PLKED    EXEC PGM=EDCPRLK,COND=(8,LT,PLI)
//STEPLIB  DD  DSN=&LIBPRFX;.SCEERUN,DISP=SHR
//SYSMSGS  DD  DSN=&LIBPRFX..SCEEMSGP(&PLANG),DISP=SHR
//SYSLIB   DD  DUMMY
//SYSMOD   DD  DSN=&&PLNK,DISP=(,PASS),
//             UNIT=SYSALLDA,SPACE=(CYL,(1,1)),
//             DCB=(RECFM=FB,LRECL=80,BLKSIZE=&SYSLBLK)
//SYSIN    DD  DSN=*.PLI.SYSLIN,DISP=(OLD,DELETE)
//SYSPRINT DD  SYSOUT=*
//SYSOUT   DD  SYSOUT=*
//*********************************************************************
//* LOAD AND RUN STEP
//*********************************************************************
//GO       EXEC PGM=LOADER,PARM='MAP,PRINT',
//             COND=((8,LT,PLI),(8,LE,PLKED))
//STEPLIB  DD  DSN=&LIBPRFX;.SCEERUN,DISP=SHR
//SYSLIB   DD  DSN=&LIBPRFX..SCEELKED,DISP=SHR
//SYSPRINT DD  SYSOUT=*
//SYSLIN   DD  DSN=*.PLKED.SYSMOD,DISP=(OLD,DELETE)
//SYSLOUT  DD  SYSOUT=*
//CEEDUMP  DD  SYSOUT=*
//SYSUDUMP DD  SYSOUT=*

他のカタログ式プロシージャーの詳細について は、「z/OS 言語環境プログラム プログラミング・ガイド」を参照してください。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)