Re: C++ Batch compile with includes in a USS directory
#MEMBER# is set to the name of the source module to be compiled by an external process. All of the source files -- .C and .h -- are in the same folder, but I guess they would not need to be. This is CBCC, but CBCCL should be very similar. Member CCOPTF does not contain any of the SEARCH type parameters. //CC EXEC CBCC, // CPARM='OPTF(DD:SYSOPTF)' //SYSIN DD PATH='/u/userid/Source/#MEMBER#.C' //SYSLIN DD PATH='/u/userid/Object/#MEMBER#.o', // PATHOPTS=(OWRONLY,OCREAT),PATHMODE=SIRWXU //SYSLIB DD PATH='/u/userid/Source' //SYSOPTF DD DISP=SHR,DSN=hlq.CNTL(CCOPTF) Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Donald Likens Sent: Wednesday, February 25, 2015 7:23 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: C++ Batch compile with includes in a USS directory I want to do a batch compile using procedure CBCCL with the #includes that are required to compile the source in /VERSYSB/usr/lpp/IHSA/V8R5/include. I tried pointing the SYSLIB DD to this directory. I also tried the SEARCH option. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
C++ Batch compile with includes in a USS directory
I want to do a batch compile using procedure CBCCL with the #includes that are required to compile the source in /VERSYSB/usr/lpp/IHSA/V8R5/include. I tried pointing the SYSLIB DD to this directory. I also tried the SEARCH option. I have been successful with using the UNIX xlc command but this has other complications. Any help is appreciated. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: C++ Batch compile with includes in a USS directory
I was going through this same process a while back. At that time I decided that batch compiles with the XL C/C++ compiler just don't work as documented. The best you can do is find something that works and not try and rationalize it with what the doc says. One thing I remember from that exercise is that the compiler reacts differently in the use of the SEARCH and LSEARCH options if you first reset them before setting them to the value you want. I ended up with this in my OPT file to get it to work: NOSEARCH SEARCH(/USR/LPP/CBCLIB/INCLUDE/) NOLSEARCH LSEARCH(/USR/LPP/CBCLIB/INCLUDE/) I'm not sure this was the total solution to my problems but I remember it made things better. Chuck Arney Arney Computer Systems Web: http://zosdebug.com Facebook: http://www.facebook.com/arneycomputer -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Donald Likens Sent: Wednesday, February 25, 2015 9:23 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: C++ Batch compile with includes in a USS directory I want to do a batch compile using procedure CBCCL with the #includes that are required to compile the source in /VERSYSB/usr/lpp/IHSA/V8R5/include. I tried pointing the SYSLIB DD to this directory. I also tried the SEARCH option. I have been successful with using the UNIX xlc command but this has other complications. Any help is appreciated. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: C++ Batch compile with includes in a USS directory
On Wed, Feb 25, 2015 at 9:46 AM, Chuck Arney ch...@arneycomputer.com wrote: I was going through this same process a while back. At that time I decided that batch compiles with the XL C/C++ compiler just don't work as documented. The best you can do is find something that works and not try and rationalize it with what the doc says. One thing I remember from that exercise is that the compiler reacts differently in the use of the SEARCH and LSEARCH options if you first reset them before setting them to the value you want. I ended up with this in my OPT file to get it to work: NOSEARCH SEARCH(/USR/LPP/CBCLIB/INCLUDE/) NOLSEARCH LSEARCH(/USR/LPP/CBCLIB/INCLUDE/) Chuck's solution is exactly what i use and it works correctly. You can also add regular PDS files here. Also, remember that USS paths need to be entered in upper and lower case to exactly match the path. I'm not sure this was the total solution to my problems but I remember it made things better. Chuck Arney Arney Computer Systems Web: http://zosdebug.com Facebook: http://www.facebook.com/arneycomputer -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Donald Likens Sent: Wednesday, February 25, 2015 9:23 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: C++ Batch compile with includes in a USS directory I want to do a batch compile using procedure CBCCL with the #includes that are required to compile the source in /VERSYSB/usr/lpp/IHSA/V8R5/include. I tried pointing the SYSLIB DD to this directory. I also tried the SEARCH option. I have been successful with using the UNIX xlc command but this has other complications. Any help is appreciated. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: C++ Batch compile with includes in a USS directory
Thanks for your help... I got the following to work: //PROC JCLLIB ORDER=(CBC.SCCNPRC) //CC EXEC CBCC, // CPARM='OPTF(DD:SYSOPTF)' //SYSIN DD PATH='/u/user/source/main.cpp.C' //SYSLIN DD PATH='/u/user/source/main.cpp.o', // PATHOPTS=(OWRONLY,OCREAT),PATHMODE=SIRWXU //SYSLIB DD PATH='/VERSYSB/usr/lpp/IHSA/V8R5/include' //SYSOPTF DD DISP=SHR,DSN=TSSDON.user.CNTL(CCOPTF) CCOPTF: START OFFSET SOURCE XREF LIST SEARCH(//'CEE.SCEEH.+', //'CBC.SCLBH.+', /VERSYSB/usr/lpp/IHSA/V8R5/include) NOLSEARCH -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: C++ Batch compile with includes in a USS directory
On Wed, 25 Feb 2015 09:22:59 -0600, Donald Likens wrote: I want to do a batch compile using procedure CBCCL with the #includes that are required to compile the source in /VERSYSB/usr/lpp/IHSA/V8R5/include. I tried pointing the SYSLIB DD to this directory. I also tried the SEARCH option. I have been successful with using the UNIX xlc command but this has other complications. Would BPXBATCH meet your need for batch? (What other complications?) -- gil -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN