pcc

Langue: en

Version: 370815 (fedora - 01/12/10)

Section: 1 (Commandes utilisateur)


BSD mandoc

NAME

cc - front-end to the C compiler

SYNOPSIS

[-cEgkLMPOStvXx [-fPIC ] ] [-fpic ] [-m option ] [-nostartfiles ] [-nostdinc ] [-nostdlib ] [-pg ] [-pthread ] [-static ] [-B prefix ] [-D macro[=value] ] [-d option ] [-I directory ] [-include path ] [-isystem path ] [-o outfile ] [-Wl flags ] [file ... ]

DESCRIPTION

The utility provides a front-end to the ``portable C compiler'' Multiple files may be given on the command line. Unrecognized options are all sent directly to ld(1).

Filenames that end with .c are passed via cpp(1) -> ccom(1) -> as(1) -> ld(1).

Filenames that end with .i are passed via ccom(1) -> as(1) -> ld(1).

Filenames that end with .s are passed via as(1) -> ld(1).

Filenames that end with .S are passed via cpp(1) -> as(1) -> ld(1).

Filenames that end with .o are passed directly to ld(1).

The options are as follows:

-B prefix
Define alternate prefix path for cpp(1), ccom(1), as(1), or ld(1) executables.
-C
Passed to the cpp(1) preprocessor to not discard comments.
-c
Only compile or assemble and then stop. Do not link. The resulting object output is saved as a filename with a ``.o'' suffix unless -o option is used. Note: cannot be combined with -o if multiple files are given.
-D macro[=value]
Passed to the cpp(1) preprocessor to define macro
-d option
Passed to the as(1) assembler.
-E
Stop after preprocessing with cpp(1). Do not compile, assemble, or link. Output is sent to standard output unless the -o option is used.
-fPIC
Generate PIC code.
-fpic
Tells C compiler to generate PIC code and tells assembler that PIC code has been generated.
-g
Send -g flag to ccom(1) to create debug output. This unsets the -O option.
-I path
Passed to the cpp(1) preprocessor to add header search directory to override system defaults.
-include file
Tells the cpp(1) preprocessor to include the file during preprocessing.
-isystem path
Defines path as a system header directory for the cpp(1) preprocessor.
-k
Generate PIC code. See -fpic option.
-L
TODO
-M
Pass -M flag to cpp(1) to generate dependencies for make(1).
-m options
Target-dependent option.
ARM
-mlittle-endian -mbig-endian -mfpe=fpa -mfpe=vpf -msoft-float -march=armv1 -march=armv2 -march=armv2a -march=armv3 -march=armv4 -march=armv4t -march=armv4tej -march=armv5 -march=armv6 -march=armv6t2 -march=armv6kz -march=armv6k -march=armv7
HPPA
i386
MIPS
-mlittle-endian -mbig-endian -mhard-float -msoft-float
PDP-10
PowerPC
Sparc64
VAX
-nostartfiles
Do not link with the system startup files (crt0.c, etc.)
-nostdinc
Do not use the system include paths (/usr/include, etc.)
-nostdlib
Do not link with the system C library (libc).
-O
Enable optimizations. Currently passes -xdeljumps and -xtemps to ccom(1). Note: this is unset if the -g option is used.
-o outfile
Save result to outfile
-P
TODO
-pg
Enable profiling on the generated executable.
-pthread
Defines _PTHREADS preprocessor directive for cpp(1). Uses -lpthread for the ld(1) linker.
-S
Stop after compilation by ccom(1). Do not assemble and do not link. The resulting assembler-language output is saved as a filename with a ``.s'' suffix unless the -o option is used. Note: cannot be combined with -o if multiple files are given.
-static
Do not use dynamic linkage. By default, it will link using the dynamic linker options and/or shared objects for the platform.
-shared
Create a shared object of the result. Tells the linker not to generate an executable.
-t
Passes -t to cpp(1) for traditional C preprocessor syntax.
-U macro
Passes to the cpp(1) preprocessor to remove the initial macro definition.
-v
Outputs the version of and shows what commands will be run with their command line arguments.
-Wl flags
Options for the linker.
-X
Don't remove temporary files on exit.
-x
May be used to give separate optimization flags to ccom, see -O for options.
-x c
Gcc compatibility option; specify that the language in use is c

Predefined Macros

A few macros are predefined by when sent to cpp(1).
__PCC__
Set to the major version of pcc(1). These macros can be used to select code based on pcc(1) compatibility. See the -v option.
__PCC_MINOR__
Set to the minor version.
__PCC_MINORMINOR__
Set to the minor-minor version --- the number after the minor version.
_PTHREADS
Defined when -pthread switch is used.

Also system- and/or machine-dependent macros may also be predefined; for example: __NetBSD__ __ELF__ and __i386__

SEE ALSO

as(1), ccom(1), cpp(1), ld(1)

HISTORY

The command comes from the original Portable C Compiler by S. C. Johnson, written in the late 70's.

This product includes software developed or owned by Caldera International, Inc.