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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

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

6. The default LANGLVL and related compiler options are set according to<br />

whether cc, c89, or c++ (cxx) was invoked. These options affect various<br />

aspects of the compilation, such as z/<strong>OS</strong> XL C/C++ predefined macros, which<br />

are used like feature test macros to control which symbols are made visible in<br />

a source file (typically a header file), but are normally not defined or undefined<br />

except by this compiler option. They can also affect the language rules used<br />

by the compiler. For more information about the compiler options listed here,<br />

see z/<strong>OS</strong> XL C/C++ User’s Guide . For more information about z/<strong>OS</strong> XL C/C++<br />

predefined macros, see z/<strong>OS</strong> XL C/C++ Language Reference. The options are<br />

shown here in a syntax that the user can specify on the c89/cc/c++ command<br />

line to override them:<br />

v c89 (also c++ (cxx) when using a C++ compiler older than z/<strong>OS</strong> v1r2)<br />

-W "c,langlvl(ansi),noupconv"<br />

v c++ (cxx)<br />

-W "c,langlvl(extended,nolibext,nolonglong)<br />

v cc<br />

-W "c,langlvl(commonc),upconv"<br />

7. By default the usual place for the -L option search is the /lib directory<br />

followed by the /usr/lib directory. See the description of environment variable<br />

prefix_LIBDIRS for information on customizing the default directories to search.<br />

The archive libraries libc.a and libm.a exist as files in the usual place for<br />

consistency with other implementations. However, the run-time library bindings<br />

are not contained in them. Instead, MVS data sets installed with the Language<br />

Environment run-time library are used as the usual place to resolve run-time<br />

library bindings. In the final step of the link-editing phase, any MVS load<br />

libraries specified on the -l operand are searched in the order specified,<br />

followed by searching these data sets. See the prefix_PLIB_PREFIX<br />

description, as well as descriptions of the environment variables featured in the<br />

following list.<br />

prefix_ILSYSLIB<br />

prefix_ILSYSIX<br />

prefix_LSYSLIB<br />

prefix_PSYSIX<br />

prefix_PSYSLIB<br />

This list of environment variables affects the link-editing phase of c89, but only<br />

for non-XPLINK link-editing. See XPLINK (Extra Performance Linkage) in<br />

“Options” on page 70.<br />

The following list of environment variables affects the link-editing phase of c89,<br />

but only for ILP32 XPLINK link-editing. See XPLINK (Extra Performance<br />

Linkage) in “Options” on page 70.<br />

prefix_ILXSYSLIB<br />

prefix_ILXSYSIX<br />

prefix_LXSYSLIB<br />

prefix_LXSYSIX<br />

The following list of environment variables affects the link-editing phase of c89,<br />

but only for LP64 link-editing. See the description of LP64 in “Options” on page<br />

70.<br />

prefix_IL6SYSLIB<br />

prefix_IL6SYSIX<br />

prefix_L6SYSLIB<br />

prefix_L6SYSIX<br />

8. Because archive library files are searched when their names are encountered,<br />

the placement of -l operands and file.a operands is significant. You may have<br />

Chapter 2. Shell command descriptions 99

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

Saved successfully!

Ooh no, something went wrong!