Welcome to the home of GNU Fortran

The purpose of the GNU Fortran (GFortran) project is to develop the Fortran compiler front end and run-time libraries for GCC, the GNU Compiler Collection. GFortran development is part of the GNU Project. We seek to bring free number crunching to a broad spectrum of platforms and users.

In particular, the project wishes to reach users of the Fortran language, be it in the scientific community, education, or commercial environments. The GFortran compiler is fully compliant with the Fortran 95 Standard and includes legacy F77 support. In addition, a significant number of Fortran 2003 and Fortran 2008 features are implemented. Please give it a try. If you encounter problems, contact us at the mailing list or file a problem report in bugzilla.

GFortran development follows the open development process. We do this to attract a diverse team of developers and to ensure that GFortran works on multiple architectures and diverse environments. We always need more help. If you are interested in participating, please contact us at fortran@gcc.gnu.org. (Also check out our mailing lists page)

The Wiki and Getting the Compiler

For additional info on GFortran developments, you may find the GFortran wiki useful. Anyone may contribute information to the wiki. (Neither copyright paperwork nor a patch review process is required.)

The GNU Project is about providing source code for its programs. For convenience, a number of people regularly build binaries for different platforms. Links to these can be found at the wiki. Most of the binary executables are the latest development snapshots of GFortran and are provided to encourage testing. We also want new users, from students to masters of the art of Fortran, to try GFortran. It really is a great compiler!

Project Objectives

We strive to provide a high quality Fortran compiler that works well on a variety of native targets. This means:

Extensions in GNU Fortran

The initial goal of the GNU Fortran Project was construction of a Fortran 95 compiler that complies with the ISO Fortran 95 Programming Language standard [ISO/IEC 1539-1:1997(E)]. We are now well into F2003 and F2008 features. The GFortran wiki and Bugzilla list features under development or yet to be implemented. Compiler capability is quite extensive and includes nearly all g77 features. We highly encourage users to move from g77, which is no longer maintained, and start taking advantage of GFortran's modern features. Legacy g77 code will compile fine in almost all cases.

Status of Compiler and Run-time Library

We regularly update the status of the front end and run-time library development. For a TODO list, check Bugzilla and the GFortran wiki.

Contributing

We encourage everyone to contribute changes and help test GNU Fortran. GNU Fortran is developed on the mainline of GCC and has been part of the compiler collection since the 4.0.0 release. We provide read access to our development sources for everybody by anonymous SVN. If you do not have SVN access (for instance if you are behind a firewall prohibiting the SVN protocol), you might want to download snapshots.

Contributions will be reviewed by at least one of the following people:

Under the rules specified below:

The directories involved are:

  1. gcc/gcc/fortran/

  2. gcc/gcc/testsuite/gfortran.dg/

  3. gcc/gcc/testsuite/gfortran.fortran-torture/

  4. gcc/libgfortran/

Documentation

The manuals for release and current development versions of GNU Fortran can be downloaded from the wiki documentation page or the GCC online documents page.

Usage

Here is a short explanation on how to invoke and use the compiler once you have built it (or downloaded the binary).

Suggested Reading

We provide links to other information relevant to Fortran programmers; the GFortran wiki contains further links.