xlc — Compiler invocation using a customizable configuration file

Format

xlc   | xlc_x   | xlc_64
xlC   | xlC_x   | xlC_64
xlc++ | xlc++_x | xlc++_64
cc    | cc_x    | cc_64
c89   | c89_x   | c89_64
c99   | c99_x   | c99_64
cxx   | cxx_x   | cxx_64
c++   | c++_x   | c++_64

Description

The xlc utility uses an external configuration file to control the invocation of the compiler. The xlc and related commands compile C and C++ source files. They also process assembler source files and object files.

Note: Unless the -c option is specified, the xlc utility calls the binder to produce an executable module.

All commands accept the following input files with their default z/OS® UNIX file system and host suffixes:

z/OS UNIX files:
  • filename with .C suffix (C++ source file)
  • filename with .c suffix (C source file)
  • filename with .i suffix (preprocessed C or C++ source file)
  • filename with .o suffix (object file for binder/IPA Link)
  • filename with .s suffix (assembler source file)
  • filename with .a suffix (archive library)
  • filename with .p suffix (prelinker output file for the binder/IPA Link)
  • filename with .I suffix (IPA Link output file for the binder)
  • filename with .x suffix (definition side-file or side deck)
Host files:
  • filename with .CXX suffix (C++ source host file)
  • filename with .C suffix (C source host file)
  • filename with .CEX suffix (preprocessed C or C++ source host file)
  • filename with .OBJ suffix (object host file for the binder/IPA Link)
  • filename with .ASM suffix (assembler source host file)
  • filename with .LIB suffix (host archive library)
  • filename with .CPOBJ suffix (prelinker output host file for the binder/IPA Link)
  • filename with .IPA suffix (IPA Link output host file for the binder)
  • filename with .EXP suffix (host definition side-file or side deck)
Note: For host files, the host data set name must by preceded by a double slash (//). The last qualifier of the data set name is .C instead of a file name with a .C suffix.

The xlc utility invokes the assembler, the z/OS XL C/C++ compiler, and the binder. Invocation of the compiler and the binder is described in Invoking the compiler and Invoking the binder.