GCC

From OSDev.wiki
Revision as of 14:52, 21 October 2008 by Solar (talk | contribs) (Linkfix)
Jump to navigation Jump to search

The GNU Compiler Collection (GCC) is a toolkit for compiling and assembling programs for a wide variety of platforms and languages. It is one of the core utilities in the Free Software Foundation's GNU Project.

While it is most closely associated with C and C++, it is in fact a suite of several compilers and their libraries. The newest version of GCC is version 4.3.0 which includes support for ANSI and K&R C, Objective-C, C++, Java, Fortran and Ada.

GCC is strongly supported on POSIX compliant platforms but has also been ported to other operating systems such as Windows. GCC also includes support for targeting many different CPU architectures including X86, X86-64, IA-64, Alpha, SPARC, MIPS, PowerPC, and ARM.

OS Development with GCC

Although other compilers can be used for OS development, OS developers are encouraged to use one of GCC derivatives. It comes installed by default on virtually every Unix system and has been ported to Windows.

  • DJGPP is a port of GCC to DOS and can be used under Windows. Using DJGPP is discouraged.
  • MinGW is a port of GCC to Windows. It does a good job for Win32 applications, but is not suitable for OS development.
  • Cygwin is the choice for OS development under Windows.

Finally, it is recommended to set up a cross-compilation environment in order to avoid possible problems. (Note: On Windows, a cross-compiler can only be built in the Cygwin environment.)

See Also

Articles

External Links