Other Compilers
Jump to navigation
Jump to search
Other compilers that can be used for OS development:
- Active Oberon - the complete A2-System has been implemented in Oberon, see Language Info in the Oberon Community Platform. See also: Operating System in Wikipedia and Lukas Mathis' Blog: Ignore the Code.
- Borland Turbo C - only useful for 16bit OSes - Available from the Borland/Embarcadero Antique Software Museum
- Clang - a front end for LLVM - http://clang.llvm.org/
- Digital Mars - mainly known for the D programming language, but also supports C and C++. Commercial and free versions available, targeted for Windows and DOS. Homepage: http://digitalmars.com/
- Free Pascal Compiler - available at http://www.freepascal.org. Only issue is that you need to write your own RTL to not call system functions.
- FreeBASIC - 32-bit BASIC compiler (not an interpreter) that has many new improvements that will help in OS construction such as pointers and inline assembly, Available at http://www.freebasic.net
- Intel C/C++ Compiler. Commercial (free 30-days trial). Available for Linux, Windows, and OS X. It is very compatible with MSVC++ (I haven't spent even an hour to change compiler) and GCC (as they say). Famed for it's heavy optimisation. Targets IA-32, x86-64, IA-64, and XScale. Recommended by Intel for systems and applications programming (info on this would be helpful). http://software.intel.com/en-us/intel-compilers/
- kencc, Ken Thompson's portable compiler collection for Plan 9, available from a variety of sources to run on Plan 9, Unix, or other systems. The best-maintained targets are AMD64, 386, & ARM. ARM64 support is new in 2019. Some links: Running on Unix, Windows, and Plan 9 are the standalone JehanneOS/devtools-kencc, and Inferno OS. In Plan 9 itself you can use private namespaces to create a cross-compile environment. Plan 9 distributions are 9front and Plan 9. Plan 9 is inherently unmaintained, but patches are provided at 9legacy.
- PCC/Portable C Compiler - http://pcc.ludd.ltu.se/
- TCC Tiny C Compiler - Tiny, fast, single-binary compiler assembler and linker for i386. Supports almost all of ISO C99, many GNU extensions and some of its own, including optional memory and bounds checking. Outputs ELF or PE-i386. Does not generate position-independent code.
- GNU COBOL - COBOL Compiler https://sourceforge.net/projects/open-cobol/
ToDo: What other compilers can be used for OS development (excluding those listed in Category:Compilers)
A list of small compilers/interpreters, useful for OS devers who want an alternative language: https://github.com/marcpaq/b1fipl