Open awvwgk opened 3 years ago
Awesome, thanks @awvwgk this is super useful! I've edited to include Intel differences on Windows.
Thanks for putting this together. It will be invaluable as we try to support more compilers.
I found that Ubuntu Focal (ubuntu-20.04
image) has a flang
package available.
This Ubuntu flang possibly came from Debian. It might be quite out of date i.e. syntax bugs that might make issues for modern Fortran packages.
@awvwgk This has to be the most comprehensive listing of Fortran compilers that I've ever seen. Bravo!
Yes I think this would be great for the WIki insetad of Issue. Also, PGI is now also discontinued, replaced by NVIDIA
Feel free to create a wiki page for it, the wiki should be still world-editable.
The wiki isn't world editable
That can be fixed. Try again.
Thanks, I put an updated version of this table at https://github.com/fortran-lang/fpm/wiki/Compiler-support
Came up in #220.
At some point we might have to determine which compiler is used with fpm, therefore I tried to collect some information on the various Fortran compilers around. I only have first hand access to a fraction of them, so most of these information are second hand from HPC documentations or build systems.
Feel free to correct or add information to this table. Alternatively, we could move this table to the wiki.
gfortran
gcc
-J
-I
-fopenmp
ifort
icc
-module
-I
-qopenmp
ifort
icc
/module:path
/I
/Qopenmp
ifx
icx
-module
-I
-qopenmp
pgfortran
pgcc
-module
-I
-mp
nvfortran
nvc
-module
-I
-mp
flang
clang
-module
-I
-mp
lfortran
lfc
-M
-I
-openmp
nagfor
-mdir
-I
-openmp
crayftn
craycc
-J
-I
-homp
xlf90
-qmoddir
-I
-qsmp
-moddir=
-M
-xopenmp
ftn95
/MOD_PATH
lcc
-J
-I
-fopenmp
-module
-I
-mp
-fmod=
-I
-fopenmp
-module
-I
-mp
For now it might be sufficient to only support GCC, since we only guarantee that fpm works when compiled with GCC right now.
First class compiler support requires access to the compiler to allow testing in a CI environment, some of the commercial compilers have free versions for open source developers available.