Changes that affect compiler invocations

As of z/OS® V1R6 C/C++ compiler, compiler invocation is supported by two different utilities:
  • c89
  • xlc
z/OS V1R6 C/C++ introduced the following utilities:
  • xlc command, to compile a C program
  • xlC and xlc++ commands, to compile a C++ program
z/OS V1R6 C/C++ introduced the following command suffixes:
  • _x suffix, which compiles the program with XPLINK
  • _64 suffix, which compiles the program under LP64
The utility you want to use depends on:
  • Whether you need to port code between z/OS and AIX®.
  • How you want to set up your build environment.
For example, you can use the command c89_x to compile an ANSI-compliant program with XPLINK.
Note: As of z/OS V1R7 XL C/C++, you no longer need to use command names with suffixes _x/_64 to compile/bind an XPLINK or 64-bit application. You can use suffixless command names with -qxplink/-q64 or -Wc,xplink/-Wc,lp64 and -Wl,xplink/-Wl,lp64 instead. For detailed information, refer to the c89 utility information in z/OS XL C/C++ User's Guide.
Table 1. Differences between the c89 and xlc compiler invocation utilities
  c89 utility xlc utility
Command support The c89 utility does not support
  • The -S flag option introduced in z/OS V1R9.
  • AIX options syntax.
The following commands accept AIX C/C++ as well as z/OS C/C++ options syntax:
  • cc
  • c89
  • cxx
  • c++

The xlc utility does not support the TEMPINC compiler option.

Environment setup Determined by environment variables Determined by configuration file