Pcc
compiles and loads C programs,
using APE (ANSI C/POSIX) include files and libraries.
Named files ending with
.c
are preprocessed with
cpp(1),
then compiled with one of the compilers described in
8c(1),
as specified by the environment variable
$objtype.
The object files are then loaded using one of the loaders described in
8l(1).
The options are:
- -+
- Accept C++
//
comments.
- -o out
- Place loader output in file
out
instead of the default
8.out,
v.out,
etc.
- -P
- Omit the compilation and loading phases;
leave the result of preprocessing
name.c
in
name.i.
- -E
- Like
-P,
but send the result to standard output.
- -c
- Omit the loading phase.
- -p
- Insert profiling code into the executable output.
- -w
- Print compiler warning messages.
- -W
- Print all the messages that
-w
would print as warnings, but make them errors.
- -llib
- Include
/$objtype/lib/ape/liblib.a
as a library during the linking phase.
- -B
- Don't complain about functions used without
ANSI function prototypes.
- -V
- Enable
void*
conversion warnings, as in
8c(1).
- -v
- Echo the preprocessing, compiling, and loading commands
before they are executed.
- -x file
- Produce an export file in the executable, as described in
8l(1).
- -Dname=def
- -Dname
- Define the
name
to the preprocessor,
as if by
#define.
If no definition is given, the name is defined as
1.
- -Uname
- Undefine the
name
to the preprocessor,
as if by
#undef.
- -Idir
- #include
files whose names do not begin with
/
are always
sought first in the directory
of the
file
argument,
then in directories named in
-I
options,
then in
/$objtype/include/ape.
- -N
- Don't optimize compiled code.
- -S
- Print an assembly language version of the object code
on standard output.
- -T
- Pass type signatures on all external and global entities.
The signature is based on the C
signof
operator.
See
dynld(2).
- -a
- Instead of compiling, print on standard output acid functions (see
acid(1))
for examining structures declared in the source files.
- -aa
- Like
-a
except that functions for structures declared in included header files
are omitted.
- -F
- Enable vararg type checking as described in
8c(1).
This is of limited use without the appropriate
#pragma
definitions.
- -f
- (ARM only) Generate VFP hardware floating point instructions.
The APE environment contains all of the include
files and library routines specified in the ANSI C standard
(X3.159-1989), as well as those specified in the IEEE Portable
Operating System Interface standard (POSIX, 1003.1-1990, ISO 9945-1).
In order to access the POSIX routines, source programs should
define the preprocessor constant
_POSIX_SOURCE.