{{language
|exec=machine
|gc=yes
|checking=static
|site=http://www.freebasic.net/}}
{{implementation|BASIC}}'''FreeBASIC''' is a free/[[open source]] ([[GPL]]), 32-bit [[BASIC]] compiler for [[Microsoft]] [[Windows]], protected-mode [[DOS]] (via a [[wp:DOS extender|DOS extender]]), and [[Linux]], with unofficial ports to [[Mac OS]] and [[BSD|FreeBSD]]. An experimental [[wp:Xbox|Xbox]] version is no longer maintained.


FreeBASIC makes use of the [[wp:GNU Binutils|GNU Binutils]] programming tools as backends, and can produce console, [[QuickBASIC]]-compatible graphical and [[GUI]] executables, along with dynamic and static libraries. A [[GCC]] frontend is under development, which will enable compilation for many more operating systems than currently supported.

Currently, software libraries like [[GTK+]], [[wp:GNU Scientific Library|GSL]], [[:Category:SDL|SDL]], [[wp:Allegro library|Allegro]], [[Lua]] and [[OpenGL]] can be used directly (no wrappers, only function and structure prototypes), and more are being added on every new release. A complete set of the Windows [[API]] headers is also included.

The compiler, and its nearly 90,000 lines of code, was, and still is, compiled by itself (in other words, FreeBASIC is a [[wp:Self-hosting|self-hosting compiler]]). The first version of FreeBASIC was written in [[:Category:Visual Basic|Visual Basic]] for DOS for that purpose.

==See also==
* [http://www.freebasic.net/ FreeBASIC homepage]
* [[wp:FreeBASIC|FreeBASIC]] on Wikipedia