16.12.2012 Views

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

z/OS V1R9.0 UNIX System Services Command ... - Christian Grothoff

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

The parameters of the compiler invocation command can be names of input files,<br />

compiler options, and linkage-editor options. Compiler options perform a wide<br />

variety of functions such as setting compiler characteristics, describing object code<br />

and compiler output to be produced, and performing some preprocessor functions.<br />

To compile without binding, use the -c compiler option. The -c option stops the<br />

compiler after compilation is completed and produces as output, an object file<br />

file_name.o for each file_name.c input source file, unless the -o option was used<br />

to specify a different object filename. The binder is not invoked. You can bind the<br />

object files later using the invocation command, specifying the object files without<br />

the -c option.<br />

Notes:<br />

xlc and xlC<br />

1. Any object files produced from an earlier compilation with the same name as<br />

expected object files in this compilation are deleted as part of the compilation<br />

process, even if new object files are not produced.<br />

2. By default, the invocation command calls both the compiler and the binder. It<br />

passes binder options to the binder. Consequently, the invocation commands<br />

also accept all binder options.<br />

Invoking the binder<br />

All invocation commands invoke the binder using the c89 utility, so all binder<br />

options must follow the syntax supported by the c89 utility. Standard libraries<br />

required to bind your program are controlled by the sysobj, syslib, and exportlist<br />

attributes in the configuration file.<br />

The specified object files are processed by the binder to create one executable file.<br />

Invoking the compiler with one of the invocation commands, automatically calls the<br />

binder unless you specify one of the following compiler options: -E, -c, -P,<br />

-qsyntaxonly, -qpponly, or -#.<br />

All input and output files supported by the c89 utility are valid for all invocation<br />

commands.<br />

Supported options<br />

In addition to -W syntax for specifying keyword options, the xlc utility supports AIX<br />

-q options syntax and several new flag options.<br />

–q options syntax<br />

The following principles apply to the use of z/<strong>OS</strong> option names with -q syntax:<br />

v Any valid abbreviation of a z/<strong>OS</strong> option name that matches (in full or in part) the<br />

spelling of the corresponding option on AIX, can be specified using -q syntax. For<br />

example, ATTRIBUTE can be specified as -qatt, -qattr, -qattri, -qattrib,<br />

-qattribu, -qattribut, and -qattribute. This is true even if the AIX option name is<br />

longer, as in the case of -qbitfields, which can be specified as -qbitf, -qbitfi,<br />

-qbitfie, -qbitfiel, -qbitfield, and -qbitfields. This is the common case that<br />

applies to most z/<strong>OS</strong> options.<br />

v Any z/<strong>OS</strong>-specific option name and its valid abbreviation can also be specified<br />

using -q syntax; for example, DBRMLIB.<br />

v Any z/<strong>OS</strong> option name that has a different spelling from the corresponding AIX<br />

option name can not be specified using -q syntax. For example, CHECKOUT,<br />

EXH, ILP32, LP64, SSCOMM, and TEST can not be specified using -q syntax.<br />

Instead use, -qinfo, -qeh, -q32, -q64, -qcpluscmt, and -qdebug=format=isd.<br />

For historical reasons, OBJECTMODEL and PHASEID are exceptions to this<br />

Chapter 2. Shell command descriptions 807

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!