Invoking the compiler
Under z/OS UNIX System Services
The Open XL C/C++ for z/OS® compiler can be invoked by using the ibm-clang or ibm-clang64 invocation command to compile and link C programs and the ibm-clang++ or ibm-clang++64 invocation command to compile and link C++ programs.
| Invocation command | Default option | Default compilation mode | Default floating-point format |
|---|---|---|---|
| ibm-clang | -m32n | 32-bit non-XPLINK | Hexadecimal float-point format |
| ibm-clang++ | -m32n-dll | ||
| ibm-clang64 | -m64 | 64-bit XPLINK | IEEE-754 float-point format |
| ibm-clang++64 |
Notes:
- ibm-clang64 is the shorthand invocation command for ibm-clang -m64.
- ibm-clang++64 is the shorthand invocation command for ibm-clang++ -m64.
- Open XL C/C++ for z/OS is
installed under
/usr/lpp/IBM/cnw/v2r1/openxl/binby default.
Under z/OS batch
The Open XL C/C++ for z/OS compiler can be invoked by using IBM-supplied cataloged procedures or writing your own JCL statements.
You can use one of the following IBM-supplied cataloged procedures for C or C++. Within the IBM-supplied cataloged procedures, there are comments that provide explanations for each PROC parameter.
Cataloged procedures for C
| Name | Description |
|---|---|
| CLCC | Compile a 32-bit non-XPLINK C program, a 32-bit XPLINK C program (with -m32), or a 64-bit XPLINK C program (with -m64) |
| CLCB | Bind a 32-bit non-XPLINK C program |
| CLCXB | Bind a 32-bit XPLINK C program |
| CLCQB | Bind a 64-bit XPLINK C program |
| CLCCB | Compile and bind a 32-bit non-XPLINK C program |
| CLCXCB | Compile and bind a 32-bit XPLINK C program |
| CLCQCB | Compile and bind a 64-bit XPLINK C program |
| CLCBG | Bind and run a 32-bit non-XPLINK C program |
| CLCXBG | Bind and run a 32-bit XPLINK C program |
| CLCQBG | Bind and run a 64-bit XPLINK C program |
| CLCCBG | Compile, bind, and run a 32-bit non-XPLINK C program |
| CLCXCBG | Compile, bind, and run a 32-bit XPLINK C program |
| CLCQCBG | Compile, bind, and run a 64-bit XPLINK C program |
| CLCCLIB | Compile and maintain an object library for a 32-bit non-XPLINK C application, a 32-bit XPLINK C application (with -m32), or a 64-bit XPLINK C application (with -m64) |
Cataloged procedures for C++
| Name | Description |
|---|---|
| CNWC | Compile a 32-bit non-XPLINK C++ program, a 32-bit XPLINK C++ program (with -m32), or a 64-bit XPLINK C++ program (with -m64) |
| CNWB | Bind a 32-bit non-XPLINK C++ program |
| CNWXB | Bind a 32-bit XPLINK C++ program |
| CNWQB | Bind a 64-bit XPLINK C++ program |
| CNWG/CNWXG | Run a 32-bit or 64-bit XPLINK C++ program |
| CNWCB | Compile and bind a 32-bit non-XPLINK C++ program |
| CNWXCB | Compile and bind a 32-bit XPLINK C++ program |
| CNWQCB | Compile and bind a 64-bit XPLINK C++ program |
| CNWBG | Bind and run a 32-bit non-XPLINK C++ program |
| CNWXBG | Bind and run a 32-bit XPLINK C++ program |
| CNWQBG | Bind and run a 64-bit XPLINK C++ program |
| CNWCBG | Compile, bind, and run a 32-bit non-XPLINK C++ program |
| CNWXCBG | Compile, bind, and run a 32-bit XPLINK C++ program |
| CNWQCBG | Compile, bind, and run a 64-bit XPLINK C++ program |
Note: Any DD names that begin with OXL must not be overridden on the IBM-supplied
cataloged procedures.