|
View previous topic :: View next topic
|
| Author |
Message |
jzhardy
Active User
Joined: 31 Oct 2006 Posts: 150 Location: brisbane
|
|
|
|
i'm trying to compile a module I sourced from IDUG called SSMTEP2 (a modified version of DSNTEP2 that writes to VB)
with the following JCL I was able to compile and linkedit a simple 'hello world' program:
| Code: |
//xxxxxPLI JOB
...
//BR14 EXEC PGM=IEFBR14,COND=(12,LE)
//ALLOC DD DSN=xxxxx.OBJ(SSMTEP2),
// DISP=(SHR,PASS),
// UNIT=SYSDA,SPACE=(TRK,(1,2))
//PLIO EXEC PGM=IEL0AA,REGION=1024K,COND=(12,LE),
// PARM=''
//STEPLIB DD DSN=SYS1.PLI.PLICOMP,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSIN DD DSN=xxxxx.PLI(SSMTEP2),
// DISP=SHR
//SYSUT1 DD UNIT=SYSDA,SPACE=(CYL,(2,2))
//SYSLIB DD DUMMY
//SYSLIN DD DSN=xxxxx.OBJ(SSMTEP2),
// DISP=(SHR)
//* *********************************
//* LINK-EDIT (BINDER) STEP
//* *********************************
//LINK EXEC PGM=IEWL,PARM=(LET,MAP,LIST),REGION=0M
//SYSLIB DD DSN=SYS1.CEE.SCEELKED,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSLMOD DD DISP=SHR,DSN=xxxxx.LOADLIB(SSMTEP2)
//SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))
//SYSLIN DD DSN=xxxxx.OBJ(SSMTEP2),DISP=(OLD,PASS) |
but when I ran this job against SSMTEP2 I got the following errors:
IEW2278I B352 INVOCATION PARAMETERS - LET,MAP,LIST
IEW2677S 5130 A VALID ENTRY POINT COULD NOT BE DETERMINED.
IEW2230S 0414 MODULE HAS NO TEXT.
IEW2677S 5130 A VALID ENTRY POINT COULD NOT BE DETERMINED.
IEW2008I 0F03 PROCESSING COMPLETED. RETURN CODE = 12.
any help appreciated |
|
| Back to top |
|
 |
prino
Senior Member

Joined: 07 Feb 2009 Posts: 1322 Location: Vilnius, Lithuania
|
|
|
|
Your allocation in the BR14 step is wrong, a PDS needs directory blocks, and you cannot allocate it with a membername!
How did your compilation step end (RC=?) and what "Compiler Diagnostic Messages" did you get?
What's the sysin for the link-edit step?
And for what it's worth, why don't you use Enterprise PL/I rather than the OS PL/I compiler that has been out of service for about 15 years or so? |
|
| Back to top |
|
 |
steve-myers
Active Member
Joined: 30 Nov 2013 Posts: 917 Location: The Universe
|
|
|
|
| The Binder messages seem to say there was nothing in the data set specified by the SYSLIN DD statement. It might be related to the IEFBR14 step prino already mentioned, or the compile step, You need to check for messages from the PL/I compiler. |
|
| Back to top |
|
 |
jzhardy
Active User
Joined: 31 Oct 2006 Posts: 150 Location: brisbane
|
|
|
|
sorry, that was a lazy cut and paste. Here is the correct version i'm now using:
| Code: |
//xxxxxPLI JOB (DHS,CSA),'PLI', J0169777
// USER=xxxxx,
// CLASS=D,
// NOTIFY=xxxxx,
// MSGCLASS=X
//*
//*
//* ***************************************
//* PREPROCESS STEP (COMPILE STAGE 1)
//* ***************************************
//PRECOMP EXEC PGM=IBMZPLI,REGION=0M,
// PARM=('MACRO,MDECK,NOCOMPILE,NOSYNTAX,INSOURCE')
//STEPLIB DD DSN=SYS1.PLI.SIBMZCMP,DISP=SHR
// DD DSN=SYS1.CEE.SCEERUN,DISP=SHR
//SYSIN DD DISP=SHR,DSN=xxxxx.PLI(SSMTEP2)
//SYSLIB DD DISP=SHR,DSN=xxxxx.COPYLIB
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD SPACE=(1024,200,50),,CONTIG,ROUND),DCB=BLKSIZE=1024,
// UNIT=SYSDA
//SYSPUNCH DD DISP=SHR,DSN=xxxxx.PLI.EXPANDED(SSMTEP2)
//* ***************************************
//* COMPILE STEP (COMPILE STAGE 2)
//* ***************************************
//PLIO EXEC PGM=IBMZPLI,REGION=1024K,COND=(12,LE),
// PARM=('+DD:OPTIONS')
//OPTIONS DD *
TEST(ALL),LIST,MAP,SOURCE,XREF(FULL),
NOBLKOFF,AGGREGATE,ATTRIBUTES(FULL),NEST,OPTIONS,NOPT,
STMT,NONUMBER,OFFSET
/*
//STEPLIB DD DSN=SYS1.PLI.SIBMZCMP,DISP=SHR
// DD DSN=SYS1.CEE.SCEERUN,DISP=SHR
//SYSIN DD DISP=SHR,DSN=xxxxx.PLI.EXPANDED(SSMTEP2)
//SYSLIB DD DISP=SHR,DSN=xxxxx.COPYLIB
//*SYSPRINT DD DISP=SHR,DSN=xxxxx.LISTING(SSMTEP2)
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD SPACE=(CYL,5,2),,CONTIG),DCB=BLKSIZE=1024,UNIT=SYSDA
//SYSLIN DD DSN=xxxxx.OBJ(SSMTEP2),DISP=SHR
//*
//*PLIPRINT EXEC PGM=IEBGENER,REGION=0M
//*SYSPRINT DD SYSOUT=*
//*SYSUT1 DD DSN=xxxxx.LISTING(SSMTEP2),DISP=SHR
//*SYSUT2 DD SYSOUT=*
//*SYSIN DD DUMMY
//* *********************************
//* LINK-EDIT (BINDER) STEP
//* *********************************
//*LINK EXEC PGM=IEWL,PARM=(LET,MAP,LIST),REGION=0M
//*SYSLIB DD DSN=SYS1.CEE.SCEELKED,DISP=SHR
//*SYSPRINT DD SYSOUT=*
//*SYSLMOD DD DISP=SHR,DSN=xxxxx.LOADLIB(SSMTEP2)
//*SYSUT1 DD UNIT=SYSDA,SPACE=(TRK,(10,10))
//*SYSLIN DD DSN=xxxxx.OBJ(SSMTEP2),DISP=(OLD,PASS) |
with this I get the following errors:
| Code: |
IBM1784I S 1313 3527.0 The ENTRY SQLDATA may not be used as a loc
since it does not have the RETURNS attribu
IBM1787I S 1497 3896.0 The ENTRY SQLIND may not be used as a oca
IBM1787I S 1540 3991.0 The ENTRY SQLIND may not be used as a loca
IBM1787I S 1543 3996.0 The ENTRY SQLDATA may not be used as a loc
IBM1787I S 1547 4004.0 The ENTRY SQLIND may not be used as a loca
IBM1787I S 1550 4011.0 The ENTRY SQLDATA may not be used as a loc
IBM1787I S 1550 4011.0 The ENTRY SQLDATA may not be used as a loc
IBM1787I S 1550 4011.0 The ENTRY SQLDATA may not be used as a loc
IBM1787I S 1578 4073.0 The ENTRY SQLDATA may not be used as a loc |
|
|
| Back to top |
|
 |
Garry Carroll
Senior Member
Joined: 08 May 2006 Posts: 1216 Location: Dublin, Ireland
|
|
|
|
... and have you googled IBM1784I and IBM1787I ? Once you have cleared up such errors, your compile might produce some output to be passed to the link-edit step.
Garry. |
|
| Back to top |
|
 |
Phrzby Phil
Senior Member
Joined: 31 Oct 2006 Posts: 1054 Location: Richmond, Virginia
|
|
|
|
| This issue provides the answer to a great IBM trivia question: Across all of IBMdom, which set of messages have prefix IBM ?[/u] |
|
| Back to top |
|
 |
prino
Senior Member

Joined: 07 Feb 2009 Posts: 1322 Location: Vilnius, Lithuania
|
|
|
|
| No interest in actually testing this, but adding the SQL pre-processor option to the compiler options might do the trick, and doing a separate pre-compile step is so not required nowadays. |
|
| Back to top |
|
 |
|
|
 |
All times are GMT + 6 Hours |
|