Re: XL C\C++ COMPILE PRELINK and LINK
Thanks > On Jul 7, 2019, at 5:42 PM, Don Poitras wrote: > > LP64 requires XPLINK. XPLINK cannot run from a PDS. I've never used the > Debug Tool, so I can't address that. For 64-bit DLL (and main), set the > entry point to be CELQSTRT. > > In article <006401d53506$febc0af0$fc3420d0$@gmail.com> you wrote: >> HI > >> > >> I am getting the following message my source is a simple program that just >> open a dataset. In addition since I would like to debug this from TSO I was >> wondering if I could use __ceetest() in the code to invoke Debug tool > >> > >> Here is my source > >> > >> #include > >> #include > >> #pragma export(openadata) > >> #pragma csect(STATIC,"TESTDLL") > >> void openadata(char *filename) > >> { > >> FILE *fp = fopen("DD:TESTDD","r"); > >> } > >> > >> Here are my compiler options > >> > >> > >> SET CPARM='NOOPTIMIZE,SSCOM,LIST,SOURCE,LONGNAME,RENT,DLL(NOCBA),LP > >>64,DEBUG(FORMAT(DWARF),LEVEL(9),SYMBOL)' > >> > >> Linker option > >> > >> LPARM='AMODE=64' > >> > >> > >> 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. > >> > >> > >> I am using compile prelink and link because I would like the DLL to be in a >> PDS > >> > >> Below Is my JCL > >> //*--- > >> //* COMPILE STEP: > >> //*--- > >> //COMPILE EXEC PGM=CCNDRVR, > >> //PARM=('/'),COND=(8,LT) > >> //* > >> //* STEPLIB DD specifies the location of the compiler and runtime > >> //* libraries. > >> //* > >> //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR > >> // DD DSN=CEE.SCEERUN,DISP=SHR > >> // DD DSN=CBC.SCCNCMP,DISP=SHR > >> //* > >> //* SYSLIB DD specifies the location of the IBM-supplied C header > >> //* (hwthic). > >> //* > >> //SYSLIB DD DSN=SYS1.SIEAHDRV.H,DISP=SHR@01C > >> // DD DSN=CEE.SCEEH.H,DISP=SHR > >> //* > >> //SYSINDD DSN=IBMUSER.TEST.SOURCE(TESTDLL),DISP=SHR > >> //* > >> //* SYSLIN DD specifies the output location of the object module > >> //* generated by the compile step. > >> //* > >> //SYSLIN DD DSN=&,UNIT=, > >> // DISP=(MOD,PASS),SPACE=(TRK,(3,3)), > >> // DCB=(RECFM=FB,LRECL=80,BLKSIZE=) > >> //SYSPRINT DD SYSOUT=* > >> //SYSCPRT DD DSN=IBMUSER.TEST.SYSPRINT(TESTDLL),DISP=SHR > >> //* > >> //*- > >> //* PRE-LINKEDIT STEP: > >> //*- > >> //PLKED EXEC PGM=EDCPRLK, > >> //PARM='',COND=(4,LT,COMPILE) > >> //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR > >> // DD DSN=CEE.SCEERUN,DISP=SHR > >> //SYSMSGS DD DSN=CEE.SCEEMSGP(),DISP=SHR > >> //SYSLIB DD DSN=CEE.SCEEOBJ,DISP=SHR > >> // DD DSN=CEE.SCEECPP,DISP=SHR > >> // DD DSN=CEE.SCEERUN,DISP=SHR > >> // DD DSN=CEE.SCEERUN2,DISP=SHR > >> //* > >> //* SYSIN DD specifies the object module generated by the compile > >> //*
Re: XL C\C++ COMPILE PRELINK and LINK
LP64 requires XPLINK. XPLINK cannot run from a PDS. I've never used the Debug Tool, so I can't address that. For 64-bit DLL (and main), set the entry point to be CELQSTRT. In article <006401d53506$febc0af0$fc3420d0$@gmail.com> you wrote: > HI > > I am getting the following message my source is a simple program that just > open a dataset. In addition since I would like to debug this from TSO I was > wondering if I could use __ceetest() in the code to invoke Debug tool > > Here is my source > > #include > #include > #pragma export(openadata) > #pragma csect(STATIC,"TESTDLL") > void openadata(char *filename) > { > FILE *fp = fopen("DD:TESTDD","r"); > } > > Here are my compiler options > > > SET CPARM='NOOPTIMIZE,SSCOM,LIST,SOURCE,LONGNAME,RENT,DLL(NOCBA),LP > 64,DEBUG(FORMAT(DWARF),LEVEL(9),SYMBOL)' > > Linker option > > LPARM='AMODE=64' > > > 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. > > > I am using compile prelink and link because I would like the DLL to be in a > PDS > > Below Is my JCL > //*--- > //* COMPILE STEP: > //*--- > //COMPILE EXEC PGM=CCNDRVR, > //PARM=('/'),COND=(8,LT) > //* > //* STEPLIB DD specifies the location of the compiler and runtime > //* libraries. > //* > //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR > // DD DSN=CEE.SCEERUN,DISP=SHR > // DD DSN=CBC.SCCNCMP,DISP=SHR > //* > //* SYSLIB DD specifies the location of the IBM-supplied C header > //* (hwthic). > //* > //SYSLIB DD DSN=SYS1.SIEAHDRV.H,DISP=SHR@01C > // DD DSN=CEE.SCEEH.H,DISP=SHR > //* > //SYSINDD DSN=IBMUSER.TEST.SOURCE(TESTDLL),DISP=SHR > //* > //* SYSLIN DD specifies the output location of the object module > //* generated by the compile step. > //* > //SYSLIN DD DSN=&,UNIT=, > // DISP=(MOD,PASS),SPACE=(TRK,(3,3)), > // DCB=(RECFM=FB,LRECL=80,BLKSIZE=) > //SYSPRINT DD SYSOUT=* > //SYSCPRT DD DSN=IBMUSER.TEST.SYSPRINT(TESTDLL),DISP=SHR > //* > //*- > //* PRE-LINKEDIT STEP: > //*- > //PLKED EXEC PGM=EDCPRLK, > //PARM='',COND=(4,LT,COMPILE) > //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR > // DD DSN=CEE.SCEERUN,DISP=SHR > //SYSMSGS DD DSN=CEE.SCEEMSGP(),DISP=SHR > //SYSLIB DD DSN=CEE.SCEEOBJ,DISP=SHR > // DD DSN=CEE.SCEECPP,DISP=SHR > // DD DSN=CEE.SCEERUN,DISP=SHR > // DD DSN=CEE.SCEERUN2,DISP=SHR > //* > //* SYSIN DD specifies the object module generated by the compile > //* step as input to the prelinker. > //* > //SYSINDD DSN=*.COMPILE.SYSLIN,DISP=(MOD,DELETE) > // DD
XL C\C++ COMPILE PRELINK and LINK
HI I am getting the following message my source is a simple program that just open a dataset. In addition since I would like to debug this from TSO I was wondering if I could use __ceetest() in the code to invoke Debug tool Here is my source #include #include #pragma export(openadata) #pragma csect(STATIC,"TESTDLL") void openadata(char *filename) { FILE *fp = fopen("DD:TESTDD","r"); } Here are my compiler options SET CPARM='NOOPTIMIZE,SSCOM,LIST,SOURCE,LONGNAME,RENT,DLL(NOCBA),LP 64,DEBUG(FORMAT(DWARF),LEVEL(9),SYMBOL)' Linker option LPARM='AMODE=64' 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. I am using compile prelink and link because I would like the DLL to be in a PDS Below Is my JCL //*--- //* COMPILE STEP: //*--- //COMPILE EXEC PGM=CCNDRVR, //PARM=('/'),COND=(8,LT) //* //* STEPLIB DD specifies the location of the compiler and runtime //* libraries. //* //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR // DD DSN=CEE.SCEERUN,DISP=SHR // DD DSN=CBC.SCCNCMP,DISP=SHR //* //* SYSLIB DD specifies the location of the IBM-supplied C header //* (hwthic). //* //SYSLIB DD DSN=SYS1.SIEAHDRV.H,DISP=SHR@01C // DD DSN=CEE.SCEEH.H,DISP=SHR //* //SYSINDD DSN=IBMUSER.TEST.SOURCE(TESTDLL),DISP=SHR //* //* SYSLIN DD specifies the output location of the object module //* generated by the compile step. //* //SYSLIN DD DSN=&,UNIT=, // DISP=(MOD,PASS),SPACE=(TRK,(3,3)), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=) //SYSPRINT DD SYSOUT=* //SYSCPRT DD DSN=IBMUSER.TEST.SYSPRINT(TESTDLL),DISP=SHR //* //*- //* PRE-LINKEDIT STEP: //*- //PLKED EXEC PGM=EDCPRLK, //PARM='',COND=(4,LT,COMPILE) //STEPLIB DD DSN=CEE.SCEERUN2,DISP=SHR // DD DSN=CEE.SCEERUN,DISP=SHR //SYSMSGS DD DSN=CEE.SCEEMSGP(),DISP=SHR //SYSLIB DD DSN=CEE.SCEEOBJ,DISP=SHR // DD DSN=CEE.SCEECPP,DISP=SHR // DD DSN=CEE.SCEERUN,DISP=SHR // DD DSN=CEE.SCEERUN2,DISP=SHR //* //* SYSIN DD specifies the object module generated by the compile //* step as input to the prelinker. //* //SYSINDD DSN=*.COMPILE.SYSLIN,DISP=(MOD,DELETE) // DD DSN=CBC.SCLBSID(IOSTREAM),DISP=SHR //* //* SYSMOD DD specifies the output dataset to contain the prelinked //* object module generated by the prelinker. //* //SYSMOD DD DSN=&,UNIT=,DISP=(NEW,PASS), //