Compilation Phases

When invoked, the compiler driver determines which compilation phases to perform based on the extension of the source filename and on the compilation options specified in the command line.

The table that follows shows the compilation phases and the software that controls each phase.

Phase Software Architecture (IA-32, Intel® 64, or IA-64)

Preprocess (optional)

fpp

All

Compile

fortcom

All

Assemble

IAS or MASM (Windows)

IAS for IA-64 architecture based applications; Microsoft Macro Assembler* (MASM) can be used for IA-32 architecture based applications. See Default Tools for more information.

as or ias (Linux)

as for IA-32 architecture-based applications and Intel® 64 architecture-based applications; ias for IA-64 architecture-based applications

Link

LINK (Windows)

All

ld(1) (Linux and Mac OS)

All

By default, the compiler driver performs the compile and link phases to produce the executable file.

The compiler driver passes object files and any unrecognized filename to the linker. The linker then determines whether the file is an object file or a library. For Linux and Mac OS, the linker can also determine whether the file is a shared library (.so).

The compiler driver handles all types of input files correctly. Therefore, it can be used to invoke any phase of compilation.

The compiler processes Fortran language source and generates object files. You decide the input and output by setting options when you run the compiler.

When invoked, the compiler determines which compilation phases to perform based on the extension of the source filename and on the compilation options specified in the command line.