GNAT
From AdaCommons
GNAT is an open source Ada compiler. Abbreviation GNAT comes originally from GNU New-York University Ada Translator.
Today GNAT has three major flavors:
- GNAT Pro from AdaCore (commercial version, or GNAT-Pro)
- GNAT GPL from AdaCore (pure GPL version, or GNAT-GPL)
- As a part of GCC from Free Software Foundation (GMGPL version, or GNAT-FSF)
GNAT-GPL
The GNAT GPL edition is the most up-to-date version available. The Ada runtime distributed with the compiler is licensed under the GPL and therefore, the executables produced by the compiler are also automatically GPL licensed.
To clarify: Project source code may be distributed under any license, but executables produced from that source using this compiler must be distributed under the GPL.
You won't get any support from AdaCore without a hefty payment, so don't ask!
GNAT-FSF
The GNAT-FSF compiler is slightly less up-to-date than GNAT GPL (usually one major upgrade per year to coincide with GNAT GPL releases and then a stream of small fixes and improvements after).
It appears that AdaCore merge their private SVN changes into the public SVN repository at gcc.gnu.org every day, but those changes are only actually merged into GCC releases once a year. You can, therefore, get the most up-to-date compiler possible if you're willing to compile your own from SVN (and deal with any bugs that crop up).
The Ada runtime distributed with the compiler is licensed under the GMGPL license which is effectively the GPL with a couple of exceptions that allow anyone to develop completely proprietary applications using the compiler.
To clarify: Both project source code and compiled executables may be distributed under any license. Executables are not "tainted" by the GPL.
GNAT-PRO
GNAT Pro is effectively the same program as GNAT-GPL but with the Ada runtime licensed under similar terms to GNAT-FSF. It is also backed up with an excellent (but expensive) support contract from AdaCore. It is not unheard of for bugs to be fixed overnight and new compiler binaries sent out by morning.
Effectively, you are paying for a compiler as up-to-date as GNAT-GPL but with a license allowing proprietary distribution like GNAT-FSF and with the addition of excellent, personal, technical support.
Platforms
- AIX
- Binary packages for GNAT-FSF available from the Gnu Ada project.
- Debian Linux
- Debian has excellent support for Ada (GNAT-FSF) thanks to the work of Ludovic Brenta.
-
apt-get install gnat-4.4
-
apt-cache search gnat
- FreeBSD
- gnat-gcc43 (GNAT-FSF, i386 only)
- gnat-gcc44 (GNAT-FSF, i386 and amd64)
- gnat-gpl (2009) (GNAT-GPL, i386)
- Build logs and patches for x86_64 GCC SVN
- Latest GNAT AUX binaries of i386 and x86_64 available at dragonlace.net
- OpenBSD
- OpenBSD has packages for GNAT-FSF 4+ on i386 at the very least.
- GNAT 4.3.4, OpenBSD amd64 4.6-current
- The Gnu Ada project has OpenBSD ports in their SVN repository.
- Latest GNAT AUX binaries of i386 and x86_64 available at dragonlace.net
- DragonFly BSD
- Latest GNAT AUX binaries of i386 and x86_64 available at dragonlace.net
- 2009 GNAT Programming Studio 4.3 Built by John Marino Download location
- NetBSD 5.1
- Latest GNAT AUX binaries of i386 and x86_64 available at dragonlace.net
- Mac OS X
- The MacAda group have builds for OS X PPC/Intel, 10.4+.
- Various contributors to the GNAT-OSX mailing list produce and distribute their own builds.
- 10.4 - 10.6, PPC/i386/x86_64 builds by Andrew Reynolds.
- Binary packages for GNAT-GPL available from the Gnu Ada project.
- SUSE Linux
- Solaris
- Binary packages for GNAT-FSF available from the Gnu Ada project.
- GNAT AUX binary of i386 OpenSolaris SCXE 130 available at dragonlace.net
- Windows
- Twilight Dragon Media produce regular, up-to-date builds of GNAT-FSF.
- MinGW has up-to-date GNAT-FSF packages in the repositories.
See Also
- Debian Ada Policy document provides some information about GNAT's history.
- Wikipedia's GNAT article.
- [1] GNAT GCC bootstrap binaries for FreeBSD.

