cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
NAME [Toc] [Back]
cc_bundled_ia: cc - bundled C compiler
SYNOPSIS [Toc] [Back]
cc [options] files
DESCRIPTION [Toc] [Back]
This manpage describes the Bundled C compiler. cc invokes the HP-UX
bundled C compiler. C source code is compiled directly to object
code.
The command uses the ctcom (Itanium(R)-based systems) or ccom (PARISC,
Precision Architecture) compiler for preprocessing, syntax and
type checking, as well as for code generation.
cc accepts several types of arguments as files:
.c Suffix Arguments whose names end with .c are understood to be C
source files. Each .c file is compiled and the resulting
object file is left in a file having the corresponding
base name, but suffixed with .o instead of .c. However,
if a single C source file is compiled and linked all in
one step, the .o file is deleted.
.s Suffix Arguments whose names end with .s are understood to be
assembly source files and are assembled, producing a .o
file for each .s file.
.i Suffix Arguments whose names end with .i are taken to be
preprocessed source files. (See the -P option below.)
Each object file is left in a file having the
corresponding name, but suffixed with .o instead of the .i
suffix.
-lx Form Arguments of the form -lx cause the linker to search the
library libx.so (Itanium-based systems) or libx.sl (PARISC)
or libx.a in an attempt to resolve currently
unresolved external references. Because a library is
searched when its name is encountered, placement of a -l
is significant. If a file contains an unresolved external
reference, the library containing the definition must be
placed after the file on the command line. See ld(1) for
further details.
-l:libx.suffix Form
Arguments of the form -l:libx.suffix cause the linker to
search the library libx.so (Itanium-based systems) or
libx.sl (PA-RISC) or libx.a (depending on suffix) in an
attempt to resolve currently unresolved external
references. It is similar to the -l option except the
current state of the -Wl,-a option is not important.
Hewlett-Packard Company - 1 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
Other Suffixes
All other arguments, such as those names ending with .o,
.a, or .so are taken to be relocatable object files and
are passed to ld (see ld(1)) to be included in the link
operation.
Arguments and options can be passed to the compiler through the CCOPTS
environment variable as well as on the command line. The compiler
reads the value of CCOPTS and divides these options into two sets;
those options which appear before a vertical bar (|) delimited by
whitespace, and those options which appear after the vertical bar.
The first set of options is placed before any of the command-line
parameters to cc; the second set of options is placed after the
command-line parameters to cc. If the vertical bar is not present,
all options are placed before the command-line parameters. For
example (in sh(1) notation),
CCOPTS=-v | -lm
export CCOPTS
cc -p prog.c
is equivalent to
cc -v -p prog.c -lm
When set, the TMPDIR environment variable specifies a directory to be
used by the compiler for temporary files, overriding the default
directory /var/tmp.
Options [Toc] [Back]
NOTE: for more information about any option, see the HP C Online Help.
To invoke the online help, use your HTML browser to use the URL
file:/opt/ansic/html/$LANG/guide/index.htm (Itanium-based systems) or
file:/opt/ansic/html/guide/$LANG/index.htm (PA-RISC).
The following options are recognized by cc:
-b Cause the linker, ld, to create a shared library rather
than a normal executable file. For details see ld(1),
HP-UX Linker and Libraries Online User's Guide and the
Programming on HP-UX manual.
-c Suppress the link edit phase of the compilation, and
force an object (.o) file to be produced for each .c or
.i file even if only one program is compiled. Object
files produced from C programs must be linked before
being executed.
Hewlett-Packard Company - 2 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
-Dname=def
-Dname Define name to the preprocessor pass (of ctcom), as if
by '#define'.
-E Preprocess named C files and send the result to
standard output.
-.suffix Instead of using standard output for the -E option,
place the output from each .c file into a file with the
corresponding .suffix.
-Idir Change the algorithm used by the preprocessor pass for
finding include files to also search in directory dir.
See the HP C Online Help.
-I- The directory of the including file is no longer used
as the starting point to look up files enclosed with
double quotes ( They start at the first -I. Files
enclosed with <> are looked up with the paths following
-I-.
-lx Refer to the -lx and -l:libx.suffix explanations
(fourth and fifth items) in the DESCRIPTION section.
-L dir Change the algorithm used by the linker to search for
libx.so (Itanium-based systems) or libx.sl (PA-RISC) or
libx.a. The -L option causes ld to search in dir
before searching in the default locations. This option
is effective only if it precedes the -l option on the
command line. See ld(1) for details.
-ooutfile Specify outfile as the name for the linker output file.
The default name is a.out. Specifies the name of the
shared library when used with -b. Specifies the name
of the object file when used with -c.
-P Preprocess named C files and leave the result in
corresponding files suffixed with .i.
-s Cause the output of the linker to be stripped of symbol
table information. See strip(1) for more details. The
use of this option prevents the use of a symbolic
debugger on the resulting program. Also see ld(1) for
additional details.
If -s is specified with any other option, the -s option
is ignored, regardless of the order in which the
options were specified.
Hewlett-Packard Company - 3 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
-S Compile the named C files, and leave the assembly
language output in corresponding files suffixed with
.s.
-tx,name Substitute or insert subprocess x with name where x is
one or more of a set of identifiers indicating the
subprocess(es). This option works in two modes: 1) if
x is a single identifier, name represents the full path
name of the new subprocess; 2) if x is a set of
identifiers, name represents a prefix to which the
standard suffixes are concatenated to construct the
full path names of the new subprocesses.
The x can take one or more of the values:
a Assembler (standard suffix is as)
c Compiler body (standard suffix is ctcom
(Itanium-based systems) or ccom (PA-RISC))
l Linker (standard suffix is ld)
p C preprocessor (standard suffix is cpp)
x All subprocesses.
-Uname Undefines any name that has been defined prior to the
preprocessing stage of compilation.
-v Enable verbose mode, which produces a step-by-step
description of the compilation process on standard
error.
-V Display the version numbers of the current compiler and
linker (if the linker is executed).
-w Suppress warning messages.
-Wx,arg1[,arg2...]
Pass the comma-separated argument(s) to subprocess x,
where x can assume one of the values listed under the
-t option as well as d (driver program) but not x (all
subprocesses). The -W option specification allows
additional, implementation-specific options to be
recognized by the compiler driver.
Itanium-based Systems Only Options [Toc] [Back]
-z Do not bind anything to address zero. This ld(1)
option allows run-time detection of null pointers. See
the note on pointers below. (Itainum-based system
only)
+dryrun Generate subprocess information for a given command
line without running the subprocesses. (Itanium-based
systems only)
Hewlett-Packard Company - 4 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
+m[d] This option outputs the double quoted ("") enclosed
include file dependency information in the format for
make(1). With +m the output goes to stdout. With +md
the output goes to a file with the suffix .d. The
directory and prefix of this file is the same as the
object file, which can be affected by the -o option.
NOTE: Specify -E to suppress generation of the object
file. In this case, no preprocessor output is
generated. (Itanium-based systems only).
+M[d] Same as +m except both <> and enclosed include files
are output as dependencies. (Itanium-based systems
only).
+p Disallow all anachronistic constructs. Ordinarily the
compiler gives warnings about anachronistic constructs;
using the +p option, the compiler will not compile code
containing anachronistic constructs. (Itanium-based
systems only).
+time Generate separate timing information for compilation
subprocesses. For each subprocess, estimated time is
generated in seconds for user processes, system calls,
and total processing time. (Itanium-based systems
only).
+uc Treats "plain" char data type as unsigned char.
(Overloading and mangling are unchanged.) This option
is to help in porting applications from environments
where unqualified (plain) char type is treated as
unsigned char instead of the default treatment as
signed char. Since all unqualified char types in the
compilation unit will be affected by this option
(including those headers that define external and
system interfaces) it is necessary to compile the
interfaces used in a single program uniformly.
+w Warn about all questionable constructs. Without the +w
option, the compiler issues warnings only about
constructs that are almost certainly problems
(Itanium-based systems only).
+Warg1[,arg2,...,argn]
Selectively suppresses any specified warning messages,
where arg1 through argn are valid compiler warning
message numbers. (Itanium-based systems only).
+Wearg1[,arg2,...,argn]
Selectively interpret any specified warning or future
error messages as errors. arg1 through argn are valid
Hewlett-Packard Company - 5 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
compiler message numbers. (Itanium-based systems
only).
System Dependent Options [Toc] [Back]
The compiler supports the following additional operating system
dependent options.
+DDdata_model
Generate code using either the ILP32 or LP64 data model. Defined
values for data_model are:
32 Use the ILP32 data model. The sizes of the int, long and
pointer data types are 32-bits.
64 Use the LP64 data model. The size of the int data type is
32-bits, and the sizes of the long and pointer data types
are 64-bits. Defines __LP64__ to the preprocessor.
+DSmodel
Use the instruction scheduler tuned to the model specified. If
this option is not used, the compiler uses the instruction
scheduler for the architecture on which the program is compiled.
Options (other) [Toc] [Back]
Any other options that are not defined will generate a warning to
standard error.
Other arguments are taken to be HP C compatible object files,
typically produced by an earlier cc run, or perhaps libraries of HP cc
compatible routines. These files, together with the results of any
compilations specified, are linked (in the order given) to produce an
executable program with the name a.out.
Pointers [Toc] [Back]
Accessing the object of a NULL (zero) pointer is technically illegal,
but many systems have permitted it in the past. The following is
provided to maximize portability of code. If the hardware is able to
return zero for reads of location zero (when accessing at least 8- and
16-bit quantities), it must do so unless the -z flag is present. The
-z flag requests that SIGSEGV be generated if an access to location
zero is attempted. Writes of location zero may be detected as errors
even if reads are not. If the hardware cannot assure that location
zero acts as if it was initialized to zero or is locked at zero, the
hardware should act as if the -z flag is always set.
EXTERNAL INFLUENCES [Toc] [Back]
Environment Variables
LANG determines the language in which messages are displayed.
If LC_CTYPE is not specified in the environment or is set to the empty
string, the value of LANG is used as a default for each unspecified or
Hewlett-Packard Company - 6 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
empty variable. If LANG is not specified or is set to the empty
string, a default of C (see lang(5)) is used instead of LANG. If any
internationalization variable contains an invalid setting, C behaves
as if all internationalization variables are set to C. See
environ(5).
aCC_MAXERR allows you to set the maximum number of errors you want the
compiler to report before it terminates compilation. (Itanium-based
systems only).
SDKROOT is used as a prefix for all references to tool set components
and must be set when you use a non-native development kit or a toolset
installed at an alternative location. Some of the toolset components
are compiler drivers, Compiler Applications, Preprocessor, Linker, and
object file tools.
TARGETROOT is used as a prefix for all references to target set
components and must also be set when using a non-native development
kit. Some of the target set components are header files, archive
libraries, and shared libraries.
International Code Set Support [Toc] [Back]
Single byte and multibyte character code sets are supported.
DIAGNOSTICS [Toc] [Back]
The diagnostics produced by the compiler itself are intended to be
self-explanatory. Occasional messages may be produced by the
assembler or the link editor.
If any errors occur before cc is completed, a non-zero value is
returned. Otherwise, zero is returned.
DEPENDENCIES [Toc] [Back]
If -s is specified along with any of the above options, the -s option
is ignored, regardless of the order in which the options were
specified.
Refer to the System Dependent Options subsection above for information
about operating system dependent options, +DDdata_model for 32-bit or
64-bit data models and +DSmodel for the instruction scheduler.
FILES [Toc] [Back]
file.c C input file
file.i previously preprocessed cc input file
file.o object file
file.so shared library, created with -b on
Itanium-based systems
Hewlett-Packard Company - 7 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
file.sl shared library, created with -b on PARISC
a.out linked executable output file
/var/tmp/* temporary files used by the compiler
(Itanium-based systems)
/var/tmp/ctm* temporary files used by the compiler
(PA-RISC systems)
/usr/ccs/bin/cc C driver
/usr/ccs/bin/cc_bundled C driver
/usr/ccs/lbin/ctcom C Compiler (Itanium-based systems)
/usr/ccs/lbin/ccom C Compiler (PA-RISC systems)
/usr/ccs/lbin/cpp preprocessor, to assemble .s files
/usr/lib/nls/msg/$LANG/aCC.cat
C compiler message catalog (Itaniumbased
systems)
/usr/lib/nls/msg/$LANG/cc.cat C compiler message catalog (PA-RISC
systems)
/usr/ccs/bin/as assembler, as(1)
/usr/ccs/bin/ld link editor, ld(1)
/usr/ccs/lib/crt0.o Runtime startup (PA-RISC systems)
/usr/include Standard directory for #include files
Other Libraries [Toc] [Back]
/usr/lib/hpux32/libc.so standard C library, see HP-UX
Reference Section (3).
(Itanium-based systems)
/usr/lib/hpux64/libc.so standard C library, see HP-UX
Reference Section (3).
(Itanium-based systems)
/usr/lib/libc.a Standard C library (archive
version), see HP-UX Reference
Section (3). (PA-RISC)
/usr/lib/libc.sl Standard C library (shared
version), see HP-UX Reference
Hewlett-Packard Company - 8 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
Section (3). (PA-RISC)
/usr/lib/hpux32/libm.a Math Library (Itanium-based
system)
/usr/lib/hpux64/libm.a Math Library (Itanium-based
systems)
/usr/lib/libm.a Math Library (PA-RISC systems)
/usr/lib/hpux32/libdld.so Dynamic loader library (Itaniumbased
systems)
/usr/lib/hpux64/libdld.so Dynamic loader library (Itaniumbased
systems)
/usr/lib/libdld.sl Dynamic loader library (PA-RISC
systems)
/usr/lib/hpux32/dld.so Dynamic loader (Itanium-based
systems)
/usr/lib/hpux64/dld.so Dynamic loader (Itanium-based
systems)
/usr/lib/dld.so Dynamic loader (PA-RISC systems)
SEE ALSO [Toc] [Back]
Online help
The online help can be displayed using a default HTML browser, or you
can invoke your own HTML browser with the URL
file:/opt/ansic/html/$LANG/guide/index.htm (Itanium-based systems) or
file:/opt/ansic/html/guide/$LANG/index.htm (PA-RISC systems)
Other topics available are: Compiler Pragmas, Floating Installation
and Implementation Defined aspects of the compiler.
Information is also available on the web at: http://www.hp.com/go/c
Profiling and Debugging Tools [Toc] [Back]
gprof(1) display call graph profile data
monitor(3C) prepare execution profile
wdb(1) C, C++ and Fortran symbolic debugger
gdb(1) C, C++ and Fortran symbolic debugger
adb(1) absolute debugger
System Tools [Toc] [Back]
as(1) translate assembly code to machine code
cpp(1) invoke the C language preprocessor
cc(1) C compiler
Hewlett-Packard Company - 9 - HP-UX 11i Version 2: Sep 2004
cc_bundled_ia(1)Bundled C Compiler - Limited Functionality cc_bundled_ia(1)
For Itanium(R)-based Systems
ld(1) invoke the link editor
Miscellaneous [Toc] [Back]
strip(1) strip symbol and line number information from an
object file
crt0(3) execution startup routine
end(3C) symbol of the last locations in program
exit(2) termination of a process
Tutorials and Standards Documents [Toc] [Back]
American National Standard for Information Systems - Programming
language C, ANS X3.159-1989.
See the HP C Online help.
Hewlett-Packard Company - 10 - HP-UX 11i Version 2: Sep 2004 [ Back ] |