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.

c89, cc, and c++<br />

acceptable to have unresolved symbols, especially the program entry point<br />

symbol (which is usually main). The -r option is normally used when you<br />

wish to combine object files incrementally. You would specify some object<br />

files during the initial link-edit that uses -r. Later, you would specify the<br />

output of the initial link-edit, along with the remaining object files in a final<br />

link-edit that is done without using -r. In such situations where you wish to<br />

combine IPA compiled object files, there is an alternative which does not<br />

involve the link editor. That alternative is to concatenate the object files into<br />

one larger file. This larger file can later be used in a final link-edit, when the<br />

remainder of the object files are also made available. (This concatenation<br />

can easily be done using the cp or cat utilities.)<br />

-s Specifies that the compilation phase is to produce a file.o file that does not<br />

include symbolic information, and that the link-editing phase produce an<br />

executable that is marked reentrant. This is the default behavior for<br />

c89/cc/c++.<br />

-U name<br />

Undefines a C or C++ macro specified with name. This option affects only<br />

macros defined by the -D option, including those automatically specified by<br />

c89/cc/c++. For information about macros that c89/cc/c++ automatically<br />

define, see Usage Note 5 on page 98. Also see Usage Note 13 on page<br />

100.<br />

Note: The xlc utility uses different semantics for handling the -U option.<br />

See “xlc — Compiler invocation using a customizable configuration<br />

file” on page 796 for more information.<br />

-u function<br />

Specifies the name of the function to be added to the list of symbols which<br />

are not yet defined. This can be useful if the only input to c89/cc/c++ is<br />

archive libraries. Non–C++ linkage symbols of up to 255 characters in<br />

length may be specified. You can specify an S-name by preceding the<br />

function name with double slash (//). (For more information about<br />

S-names, see Usage Note 23 on page 103.) The function //ceemain is the<br />

default for non-IPA Link-editing, and the function main is the default for IPA<br />

Link-editing. However, if this -u option is used, or the DLL link editor option<br />

is used, then the default function is not added to the list.<br />

-V This verbose option produces and directs output to stdout as compiler,<br />

assembler, IPA linker, prelinker, and link editor listings. If the -O, -2, or -3<br />

options are specified and cause c89/cc/c++ to use the compiler INLINE<br />

option, then the inline report is also produced with the compiler listing. Error<br />

output continues to be directed to stderr. Because this option causes<br />

c89/cc/c++ to change the options passed to the steps producing these<br />

listings so that they produce more information, it may also result in<br />

additional messages being directed to stderr. In the case of the compile<br />

step, it may also result in the return code of the compiler changing from 0<br />

to 4.<br />

Note: This option has a different meaning when using the xlc utility. See<br />

“xlc — Compiler invocation using a customizable configuration file”<br />

on page 796 for more information.<br />

-v This verbose option causes pseudo-JCL to be written to stdout before the<br />

compiler, assembler, IPA linker, prelinker, and link editor programs are run.<br />

76 z/<strong>OS</strong> <strong>V1R9.0</strong> <strong>UNIX</strong> <strong>System</strong> <strong>Services</strong> <strong>Command</strong> Reference<br />

Example: It also causes phaseid information to be emitted in stderr:<br />

FSUM0000I Utility(c89) Level(UQ99999)

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

Saved successfully!

Ooh no, something went wrong!