3 ms·
It requires a license to use GNAT for commercial projects, it's not free like many C/C++ tools.
by kats 6y ago
It requires a license to use GNAT for commercial projects, it's not free like many C/C++ tools.
- pjmlp 6y agoGCC only started to matter after UNIX vendors stop offering their SDKs for free actually.
- mhd 6y agoUneven C++ support was a big issue, too.
- MrMorden 6y agoFSF GNAT (from your distribution) can be freely used. The GNAT that makes output GPL is the GPL GNAT edition downloaded from AdaCore's website.
- synack 6y agoYep, the GNAT toolchain in Debian is actively maintained and they even build cross compilers for all of Debian's supported architectures. Combined with a Linux RT kernel, you can get some pretty good performance with only GPL code. If you need to build for bare metal rather than Linux, things get a bit more complicated as GNAT requires some runtime code to setup things like systick and interrupts. You can use AdaCore's non-GPL runtime for non-commercial purposes, cortex-gnat-rts on top of FreeRTOS, or RTEMS, which natively supports Ada (though it's poorly documented). I've also had some luck using crosstool-ng to build gcc toolchains with Ada support, but you'll still need to find or write a runtime library for bare metal.