XL Fortran input files
The input files to the compiler are:
- Source Files (.f or .F suffix)
- All .f, .f77, .f90, .f95, .f03, .f08, and .F, .F77, .F90, .F95, .F03,
and .F08 files are source
files for compilation. The compiler compiles source files in the order
you specify on the command line. If it cannot find a specified source
file, the compiler produces an error message and proceeds to the next
file, if one exists. Files with a suffix of .F are
passed through the C preprocessor (cpp)
before being compiled.
Include files also contain source and often have different suffixes from .f.
Related information: See Passing Fortran files through the C preprocessor.The fsuffix and cppsuffix attributes in Editing the default configuration file and -qsuffix let you select a different suffix.
- Object Files (.o suffix)
- All .o files are object files. After
the compiler compiles the source files, it uses the ld command
to link-edit the resulting .o files, any .o files
that you specify as input files, and some of the .o and .a files in
the product and system library directories. It then produces a single
executable output file.
The osuffix attribute, which is described in Editing the default configuration file and -qsuffix, lets you select a different suffix.
- Assembler Source Files (.s suffix)
- The compiler sends any specified .s files
to the assembler (as). The assembler output
consists of object files that are sent to the linker at link time.
Related information: The ssuffix attribute, which is described in Editing the default configuration file and -qsuffix, lets you select a different suffix.
- Archive or Library Files (.a suffix)
- The compiler sends any specified library files (.a files) to the linker at link time. There are also AIX® and XL Fortran library files in the /usr/lib directory that are linked in automatically.
- Shared Object Files (.so suffix)
- These are object files that can be loaded and shared by multiple processes at run time. When a shared object is specified during linking, information about the object is recorded in the output file, but no code from the shared object is actually included in the output file.
- Configuration Files (.cfg.nn suffix)
- The contents of the configuration file determine many aspects
of the compilation process, most commonly the default options for
the compiler. You can use it to centralize different sets of default
compiler options or to keep multiple levels of the XL Fortran compiler
present on a system.
The default configuration file is /opt/IBM/xlf/15.1.3/etc/xlf.cfg.nn, where nn indicates the OS version the configuration file is for.
Related information: See Using custom compiler configuration files and -F for information about selecting the configuration file. - Module Symbol Files: modulename.mod
- A module symbol file is an output file from compiling a module and is an input file for subsequent compilations of files that USE that module. One .mod file is produced for each module, so compiling a single source file may produce multiple .mod files.
- Submodule Symbol Files: ancestormodulename_submodulename.smod
- A submodule symbol file is an output file from compiling
a submodule and is an input file for subsequent compilations of the
descendant submodules. One .smod file is
produced for each submodule, so compiling a single source file might
produce multiple .smod files.
The submodule symbol file is not needed for compiling the ancestor module or any compilation units that access the ancestor module via use association.
Related information: See -qmoddir. - Profile Data Files
-
The -qpdf1 option produces runtime profile information for use in subsequent compilations. This information is stored in one or more hidden files with names that match the pattern ".*pdf*" or ".*pdf_map*".
Related information: See -qpdf1, -qpdf2.