,當我嘗試編譯我的程序我得到這些錯誤消息。
IEW2677S 5130有效進入點不能確定。
IEW2008I 0F03加工完成。返回碼= 12JCL嚴重消息
這裏是JCL:
000100 //IBMP5 JOB (COMPILE),USERID,MSGCLASS=H,REGION=0M,
000200 // MSGLEVEL=(1,1),CLASS=A,NOTIFY=&SYSUID
000300 //*******************************************************************
000400 //* *
000401 //* THIS JCL WILL COMPILE, LINK-EDIT (BIND) AND RUN A PROGRAM *
000402 //* *
000410 //*******************************************************************
000420 //* COMPILATION STEP
000430 //*
001100 //STEP1 EXEC PGM=IBMZPLI,REGION=1M,PARM=('MACRO,OBJECT,INSOURCE')
001200 //STEPLIB DD DSNAME=IEL380.SIBMZPRC,DISP=SHR
001201 // DD DSNAME=IEL380.SIBMZCMP,DISP=SHR
001204 //SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(2,1))
002000 //SYSPRINT DD SYSOUT=*
002010 //SYSOUT DD SYSOUT=*
002100 //*
002510 //* SOURCE CODE MEMBER
002520 //*
002530 //PLI.SYSIN DD DSN=INVAT.SOURCE(PROG5),DISP=SHR
002531 //*
002532 //* TARGET FOR OBJECT FILE
002535 //*
002536 //SYSLIN DD DSN=INVAT.OBJ(PROG5),DISP=(OLD,PASS),UNIT=SYSALLDA,
002537 // SPACE=(CYL,(1,1)),DCB=(LRECL=80,BLKSIZE=800)
002540 //*
002541 //* LINKAGE (BIND) STEP
002542 //*
002550 //STEP2 EXEC PGM=IEWL,REGION=0M
002560 //SYSLIB DD DSNAME=SYS1.LINKLIB,DISP=SHR
002570 // DD DSNAME=CEE.SCEELKED,DISP=SHR
002580 //SYSLIN DD DSN=INVAT.OBJ(PROG5),DISP=SHR
002590 //LKED.SYSLMOD DD DSN=INVAT.LOAD(PROG5),DISP=SHR
002600 //SYSUT1 DD UNIT=SYSALLDA,SPACE=(TRK,(10,10))
002700 //SYSPRINT DD SYSOUT=*
002800 //*
002900 //* EXECUTION STEP
003000 //*
003100 //STEP3 EXEC PGM=PROG5
003200 //STEPLIB DD DSN=INVAT.LOAD(PROG5),DISP=SHR
003300 //SYSPRINT DD SYSOUT=*
003400 //SYSIN DD *
003800 /*
003900 //
您是否被要求編寫自己的JCL而不是使用標準程序在您的站點編譯PL/I程序? '// PLI.SYSIN DD DSN = INVAT.SOURCE(PROG5),DISP = SHR'那是什麼?和'// STEPLIB DD DSN = INVAT.LOAD(PROG5),DISP = SHR'。如果你從JCL開始,我不建議黑客使用PROCs的東西不要使用PROCs。 –
同意Bill ...你遇到的問題是PLI.SYSIN應該只是SYSIN,如果你不執行一個叫做PLI的PROC。你擁有它的方式,沒有輸入到編譯器,因此沒有輸出對象代碼和013收到你收到。簡單的解決方法是更改PLI.SYSIN和LKED.SYSLMOD的東西來刪除proc步驟名稱(即,只是SYSIN和SYSLMOD)。 –
......另外一件事是,SYSLMOD DD DSN = dataset(member)並沒有什麼錯,並跳過了SYSLIN。默認情況下,ENTRY將是輸入對象文件中的第一個CSECT,並且由於您在SYSLMOD中指定了成員名稱,因此不需要NAME。 –