Chapter Contents |
Previous |
Next |
Prelinking C and C++ Programs |
This section provides a more detailed description of
each of the options listed in Option Summary.
The options are listed alphabetically by compiler driver name. The corresponding
cool
option is shown in parentheses.
cool
options with no compiler
driver form are described last.
-Aallowrecool
(
-rc
for standalone
cool
)allowrecool
option specifies that the output object deck can be reprocessed
by COOL. Therefore, the deck is not marked as already processed by COOL.
The default
noallowrecool
specifies that the output object cannot be reprocessed
by COOL. A later attempt to reprocess the deck with COOL will produce an error.
-Acidxref
(
-xxx
for standalone
cool
)CID
cross-reference table. The table is displayed
following the other
cool
output directed to
stdout
. The extended names are displayed in alphabetical
order by C identifier.
The
-Acidxref
option is similar to the
mainframe
COOL
option
ENXREF(CID)
.
-Aclet
or
-Acletall
-m
for standalone
cool
)-Aclet
option is maintained
for compatibility with previous releases of cool, and is equivalent to -Acletall
.
-Acletnoex
( -mn
for standalone
COOL)-Acontinue
(
-zc
for standalone
cool
)cool
to continue processing
even if a corrupted
ar370
archive is detected.
The
-Acontinue
option is equivalent to
the mainframe
COOL
option
CONTINUE
.
-Adbglib=
pn (
-db
for standalone
cool
) dbglib
specifies a debugger file qualifier that provides for customization
of the destination of the debugger file. On UNIX platforms, the option specified
is a pathname to be prefixed to the file name. For example,
dbglib(/u/sasc/dbg/)will generate a filename of
/u/sasc/dbg/sname.dbg370
dbglib()
is the default.
Note:
On UNIX platforms, the sname is capitalized
and remains so for debugger filename generation.
Note:
In Release 6.50, the compiler allows the placement of the debugging
information in the object file when the
dbgobj
option is specified. The
dbgobj
option is specified by default when the
-Kautoinst
option is enabled. When this information
is discovered by COOL to be present in the object file, COOL will write the
debugging information to a file supported by the debugger. The default filename
used is somewhat different than when the debugging information is written
directly by the compiler in that it is generated using the sname
of the containing object.
-Adupsname
(
-zd
for standalone
cool
)cool
to permit the same
SNAME to be used in more than one input file.
The
-Adupsname
option is equivalent to
the mainframe
COOL
option
DUPSNAME
.
-Aendisplaylimit=
nnn (-yn
nnn
for stand-alone COOL)
The -Aendisplaylimit
option is equivalent to the mainframe COOL option endisplaylimit
.
-Aenexit=
prog,data
(
-xt
prog,data for standalone
cool
)/u/bin/myprog
and pass it the value "1 2 3":
-Aenexit=/u/bin/myprog,"1 2 3"
Note:
The rules for quoting the data value are determined by your UNIX
shell.
-Agather=
prefix
(
-g
prefix for standalone
cool
)cool
to create data tables
based on the prefix argument and append these tables to the
cool
output object code.
The
-Agather
option is similar to the
GATHER control statement used with the mainframe
COOL
utility. The
-Agather
option is used primarily with C++; occasions for using the
-Agather
option are rare. Refer to the SAS/C Compiler and Library
User's Guide for more information.
-Agmap
(
-yg
for standalone
cool
)cool
to print a cross-reference
of "gathered" symbols in the listing file.
The
-Agmap
option is similar to the mainframe
COOL
option
GMAP
.
Refer to the SAS/C Compiler and Library User's Guide, Fourth Edition for more information.
-Aignorerecool
(
-ri
for standalone
cool
) ignorerecool
specifies that if any marks are detected indicating that
COOL has already processed an input object deck, then the marks are to be
ignored. If the
ignorerecool
option is specified along with the
verbose
option, then a diagnostic message is issued and processing
continues.
The default
noignorerecool
specifies that any mark indicating that COOL has already
processed an input object deck should result in an error message and process
termination.
-Ainsert=
symbol (
-i
symbol for standalone
cool
)cool
, if necessary. If the symbol
specified by the
-Ainsert
option
is not resolved after all primary input has been processed,
cool
attempts to resolve it from an
ar370
archive.
The
-Ainsert
option is similar to the
INSERT control statement used with the mainframe
COOL
utility.
-Alinkidxref
(
-xxe
for standalone
cool
)LINKID
cross-reference table. The table is displayed following the other
cool
output directed to the standard output device. The extended names are displayed
in alphabetical order using a link id that
cool
assigns.
The
-Alinkidxref
option is similar to
the mainframe
COOL
option
ENXREF(LINKID)
.
-Alist
(
-yl
for standalone
cool
)cool
to echo input control
statements to the listing file.
The
-Alist
option is similar to the mainframe
COOL
option
LIST
.
-Anoextname
(
-n
for standalone
cool
)cool
will not process extended
names. The
-Anoextname
option is equivalent to the mainframe
COOL
option
NOEXTNAME
.
For more information about extended names processing,
see the description of the
-Kextname
compiler option in Compiling C and C++ Programs.
-Anoinceof
(
-zi
for standalone
cool
)cool
to process data following
an INCLUDE statement in an input file. By default,
cool
ignores any data following
an
INCLUDE
statement for compatibility with the IBM linkage editor.
The
-Anoinceof
option is equivalent to
the mainframe
COOL
option
NOINCEOF
.
-Anolineno
(
-d
for standalone
cool
)-Klineno
compiler option is used.
The
-Anolineno
option is equivalent to
the mainframe
COOL
option
NOLINENO
.
-Anortconst
(
-r
for standalone
cool
)cool
is to suppress copying the run-time constants CSECTs from the
output object file. The resulting object file will be somewhat smaller but
certain information used by the debugger will not be available. By default,
cool
copies these CSECTs from
the input file(s) to the output file.
The
-Anortconst
option is equivalent to
the mainframe
COOL
option
NORTCONST
.
-Anowarn
(
-w
for standalone
cool
)
The
-Anowarn
option is equivalent to the
mainframe
COOL
option
NOWARN
.
-Anoxfnmkeep
(
-f
for standalone
cool
)cool
retains these CSECTs.
The
-Anoxfnmkeep
option is equivalent
to the mainframe
COOL
option
NOXFNMKEEP
.
-Apagesize=
nn
(
-s
nn
for standalone
cool
)
The
-Apagesize
option is equivalent to
the mainframe
COOL
option
PAGESIZE
.
-Aprem
(
-p
for standalone
cool
)cool
is to remove pseudoregisters
from the output object file.
The
-Aprem
option is automatically enabled
if either the
-Tcms370
or the
-Tpcms370
compiler option is specified.
The
-Aprem
option is equivalent to the
mainframe
COOL
option
PREM
.
-Aprmap
(
-yp
for standalone
cool
)cool
to include a pseudoregister
map in the listing file.
The
-Aprmap
option is similar to the mainframe
COOL
option
PRMAP
.
-Areferences
(-xxy
for standalone COOL) -Areferences
option is specified along with one or more of the cross-reference options
(-Acidxref
, -Alinkxref
,
or -Asnamexref
), referenced symbols as well
as defined symbols are included in the cross-reference listing.
-Asmponly
(
-vo
for standalone
cool
)-Asmpxivec
option. The remaining portion
of the
cool
output is suppressed, so that the entire object
file consists of only the @EXTVEC# CSECT.
The
-Asmponly
option is equivalent to
the mainframe
COOL
option
SMPONLY
.
-Asmpxivec
(
-v
for standalone
cool
)cool
to build a vector
named @EXTVEC# that references the sname@ vector generated by
the
-Ksmpxivec
compiler option. The sname@
vector provides an alternate mechanism for reentrant initialization of
static
and
extern
data used with SMP update methods.
The
-Asmpxivec
option is equivalent to
the mainframe
COOL
option
SMPXIVEC
. The
-Ksmpxivec
cross-platform compiler option is described in Compiling C and C++ Programs. For more information
about SMP, refer to Programmer's Report: SMP Packaging for SAS/C Based
Products.
-Asnamexref
(
-xxs
for standalone
cool
)SNAME
cross-reference table. This table is displayed in alphabetical order, sorted
on the
SNAME
associated with each object file, following
the other
cool
output directed to
stdout
.
The
-Asnamexref
option is similar to the
mainframe
COOL
option
ENXREF(SNAME)
.
-Averbose
(
-zv
for standalone
cool
)cool
to produce extra messages
about its processing. These messages are displayed on the standard error device,
and are included in the listing if a listing file is being produced. These
messages are particularly useful for determining how symbols are resolved.
The
-Averbose
option is equivalent to
the mainframe
COOL
option
VERBOSE
.
-Axsymkeep
(
-e
for standalone
cool
)
The
-Axsymkeep
option is equivalent to
the mainframe
COOL
option
XSYMKEEP
.
-h
[name] (standalone
cool
only)stdout
(the standard output device).
The listing file contains a list of the options that are in effect and copies
of any diagnostic messages. All
cool
messages are directed
to the listing file and to
stderr
(standard error device). "Trivial"
messages, like banners and the
cool
return code message,
are directed to the listing file and also to
stdout
, if
stdout
is not the listing and the
-zv
(verbose) option is specified.
When you specify any of the following
cool
options,
-h
is assumed:
-yl
,
-yp
,
-yg
,
-xxe
,
-xxs
,
-xxx
.
You can also use the
-Klisting
compiler option
to produce a listing for all phases of the compilation, including the prelinking
phase. Message handling is the same as
-h
. When you specify any
of the following
cool
options
during compilation,
-Klisting
is assumed:
-Alist
,
-Aprmap
,
-Agmap
,
-Alinkidxref
,
-Asnamexref
,
-Acidxref
.
-l
namear370
archive containing
members that may be included by
cool
to resolve unresolved
external references. The name parameter specifies the filename
of the
ar370
archive.
cool
will look for the
archive named
lib
name.
a
Note:
There must not be a space between
-l
and name.
The
-l
option has no effect unless the
-L
directory option is also specified.
The
-l
option is similar to the
mainframe
COOL
option
ARLIB
.
-L
directoryar370
archives.
Note:
There must not be a space between
-L
and directory.
The
-L
option is similar to the ARLIBRARY
control statement used with the mainframe
COOL
utility.
-o
filename
(stand-alone
cool
only)cool
utility stores its output. This option must be specified when
cool
is invoked as a stand-alone utility. If
cool
is invoked by
sascc370
or
sasCC370
, the output is directed to
the
a.out
file by default unless the
-o
compiler option is specified.
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright © 2001 by SAS Institute Inc., Cary, NC, USA. All rights reserved.