Fortran and C interoperability (Mixed Fortran/C compiling)
| Cluster | Compilers |
| Hoffman2 | Intel and GNU |
| Cardio | Intel and GNU |
| Compiler |
Serial
* fileName extension, not command used, determines language version (can be changed by command flags) |
Parallel
* See the MPI doc. |
|||
| Commands | C++ fileName extensions | C fileName extensions | C++ | C | |
| Intel | icc, icpc (forces C++) | .C, .cc, .cpp, .cxx, .c++ | .c | mpiCC | mpicc |
| GNU | gcc, g++, cc | .C, .cc, .cpp, .cxx, .c++ | .c | ||
Please note, to check which version of the aforementioned compilers is installed, issue at the command line the following command, for example for the Intel fortran:
ifort --versionuse icc, gfortran, etc. for the other compilers.
| Compiler |
Serial
* fileName extension, not command used, determines language version (can be changed by command flags) |
Parallel
* See the MPI doc. |
|||
| Commands | Fortran 90 fileName extensions | Fixed Format fileName extensions | Fortran 90 | Fortran 77 | |
| Intel | ifort | .f90 (.F90 preprocessed) | .f, .for, .ftn (.F, .FOR, .FTN, .FPP preprocessed) | mpif90 | mpf77 |
| GNU | gfortran | .f90 (.F90 preprocessed) | .f, .for, .ftn | ||
| Compiler | Debugger | Linker | Profiler |
| Intel | idb* | ld | gprof |
| GNU | gdb | ld | gprof, gcov |
* Please note: It is not possible to run the Intel debugger from the login nodes, instead idb can be run within an interactive session obtained via qrsh (to invoke a qrsh session refer to: How to Get an Interactive Session through SGE).