Intel Classic Compilers

Article ID: 86
Last updated: 17 Mar, 2025

Intel compilers are recommended for building your applications on HECC systems with Intel x86-64 CPUs. There is no default compiler—you must load a specific module.

Note: The Intel classic compilers are no longer available in newer versions of the Intel OneAPI toolkits distributions.

To see what modules are available, run the module avail command:

pfe21% module avail

In the output, look for the comp-intel/versions entries. Then, load the Intel compiler module you want to use. For example: 

pfe21% module load comp-intel/2020.4.304

When you load a compiler module, some environment variables (such as PATH, CPATH, and LD_LIBRARY_PATH) are set or modified to add the paths to certain commands, include files, or libraries to your environment. This helps to simplify the way you do your work.

You can use the module show command check what environment variables will be modified for a particular module. For example:

pfe21% module show comp-intel/2020.4.304

Intel Compilers for HECC Systems

On HECC systems, there are Intel compilers for both Fortran and C/C++:

Intel Fortran Compiler: ifort (version 8 and above)

The ifort command invokes the Intel Fortran Compiler to preprocess, compile, assemble, and link Fortran programs.

pfe21% ifort [options] file1 [file2 ...]

Read man ifort for all available compiler options. To see the compiler options by categories, run:

pfe21% ifort -help 

fileN is a Fortran source (.f .for .ftn .f90 .fpp .F .FOR .FTN .FPP .F90 .i .i90), assembly (.s .S), object (.o), static library (.a), or other linkable file. Interpret the suffixes of the Fortran source files as follows:

  • .f, .for, or .ftn = Fixed-form source files.
  • .f90 = Free-form F95/F90 source files.
  • .fpp, .F, .FOR, .FTN, or .FPP = Fixed-form source files that must be pre-processed by the FPP pre-processor before being compiled.
  • .F90: = Free-form Fortran source files that must be pre-processed by the FPP pre-processor before being compiled.

Intel C/C++ Compiler: icc and icpc Commands (version 8 and above)

The Intel C++ Compiler is designed to process C and C++ programs on Intel-architecture-based systems. You can preprocess, compile, assemble, and link these programs.

pfe21% icc [options] file1 [file2 ...]
% icpc [options] file1 [file2 ...]

Read man icc for all available compiler options. To see the compiler options by categories, run:

pfe21% icc -help 

The icpc command uses the same compiler options as the icc command, with the following differences:

  • Invoking the compiler using icpc compiles .c and .i files as C++, and always links in C++ libraries. 
  • Invoking the compiler using icc compiles .c and .i files as C, and only links in C++ libraries if C++ source is provided on the command line.

fileN represents a C/C++ source (.C .c .cc .cp .cpp .cxx .c++ .i), assembly (.s), object (.o), static library (.a), or other linkable file.

Contact Us

General User Assistance

Security

  • Report security issues 24x7x365
  • Toll-free: 1-877-NASA-SEC (1-877-627-2732)
  • E-mail: soc@nasa.gov

User Documentation

High-End Computing Capability (HECC) Portfolio Office

NASA High-End Computing Program

Tell Us About It

Our goal is furnish all the information you need to efficiently and effectively use the HECC resources needed for your NASA computational projects.

We welcome your input on features and topics that you would like to see included on this website.

Please send us email with your wish list and other feedback.