# mpiCC

Compiles and links MPI programs written in C++

## Description

This command can be used to compile and link MPI programs written in C++. It provides the options and any special libraries that are needed to compile and link MPI programs.

It is important to use this command (or a `Makefile` processed with `mpireconfig`) particularly when linking programs, as it provides the necessary libraries. It can also simplify the use of the MPE profiling libraries, through the use of the `-mpilog`, `-mpitrace`, and `-mpianim` commands.

mpiCC cannot be used to compile C programs. Use mpicc for C programs.

## Command line arguments

| -mpilog | Build version that generate MPE log files
| -mpitrace | Build version that generates traces
| -mpianim | Build version that generates real-time animation
| -show | Show the commands that would be used without runnning them
| -help | Give short help
| -echo | Show exactly what this program is doing. This option should normally not be used.
| others | are passed to the compiler or linker. For example, `-c` causes files to be compiled, `-g` selects compilation with debugging on most systems, and `-o name` causes linking with the output executable given the name `name`.

## Environment Variables

The environment variables `MPICH_CCC` and `MPICH_CCLINKER` may be used to select different C++ compiler and linker. Note that since MPICH is built with a particular C++ and C compiler, change the compilers used can cause problems. Use this only if you could intermix code compiled with the different compilers.

## Examples

To compile a single file `foo.c`, use

       mpicc -c foo.c

To link the output and make an executable, use

       mpicc -o foo foo.o

Combining compilation and linking in a single command

       mpicc -o foo foo.c

is a convenient way to build simple programs.

## See Also

mpif77, mpireconfig

Location:/home/MPI/mansrc/commands