I am experimenting building 64-bit C programs on my z/OS 1.9 system using the following:
#include <stdio.h> #include <stdlib.h> int main(int argc, char **argv) { fprintf(stdout,"Hello world!\n"); } When I use the supplied proc ³EDCQCBG² to do a compile, link and go I get the following message from the bind step: IEW2456E 9207 SYMBOL FPRINTF UNRESOLVED. MEMBER COULD NOT BE INCLUDED FROM THE DESIGNATED CALL LIBRARY. The output of the Bind step shows a reference to FPRINTF: IEW2322I 1220 159 IMPORT CODE64,CELQV003,'fprintf',06D IEW2322I 1220 160 IMPORT CODE64,CELQV003,'FPRINTF',06D A 31-bit build works okay using the EDCCLG procedure. Instead of using the procedure I created the JCL from scratch. The bind portion looks like this: //BIND EXEC PGM=IEWL,REGION=20M,COND=(8,LT,COMPILE), // PARM='MAP,RENT,DYNAM=DLL,CASE=MIXED,LIST=NOIMP' //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR // DD DSN=CEE.SCEERUN,DISP=SHR //SYSLIB DD DSN=CEE.SCEEBND2,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSLIN DD DSN=*.COMPILE.SYSLIN,DISP=(OLD,DELETE) // DD DSN=CEE.SCEELIB(CELQS003),DISP=SHR // DD DDNAME=SYSIN //SYSIN DD * NAME TESTC(R) /* //SYSLMOD DD DSN=IBMUSER.LOAD,DISP=OLD //SYSDEFSD DD DUMMY This time I am getting: IEW2721S DA0B OUTPUT DATA SET FOR DDNAME SYSLMOD AND DATA SET NAME IBMUSER.LOAD IS NOT A PARTITIONED DATA SET OR PDSE. I created the IBMUSER.LOAD PDSE using the following job: //ALLOCDS JOB 51315, // IBMUSER, // NOTIFY=SNAVM4.NEALE, // MSGLEVEL=(1,1) //ALLOC EXEC PGM=IDCAMS,DYNAMNBR=1 //SYSPRINT DD SYSOUT=* //SYSIN DD * ALLOC - DSNAME(IBMUSER.LOAD) - NEW - STORCLAS(SC06) - MGMTCLAS(MC06) - DSNTYPE(LIBRARY) /* Did I create the PDSE correctly? Neale ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html