Installing
Installing FreeBASIC, any additionally needed packages, and perhaps a text editor or IDE.
Windows

- Download the latest FreeBASIC-x.xx.x-win32.exe installer
- Run it and click through it. The installer will install FreeBASIC at `C:\%ProgramFiles%\FreeBASIC`, or if you chose a different installation directory, in your chosen directory. Start Menu shortcuts to the website will be installed as well.
- Unless you already have a text editor or IDE, you should install one too, as FreeBASIC itself does not include one. An IDE can be used to write and save .bas files and to launch the FreeBASIC Compiler to compile them. The following IDEs are known to explicitly support FreeBASIC:
  - FBIDE
  - FBEdit

To uninstall FreeBASIC, remove it from the system's list of installed software (Add/remove programs, Uninstall or change a program).
Linux

- Download the latest FreeBASIC-x.xx.x-linux.tar.gz package
- Extract the archive, for example by doing right-click -> Extract Here, or manually in a terminal:

    $ cd Downloads
    $ tar xzf FreeBASIC-x.xx.x-linux.tar.gz

- The FreeBASIC setup can be used from where it was extracted. Usually it is installed into the /usr/local system directory though, so that the `fbc` program is available through-out the whole system. To do that, run the included installation script:

    $ cd FreeBASIC-x.xx.x-linux
    $ sudo ./install.sh -i

The `install.sh` script can also be given a path as in `./install.sh -i /usr` if you prefer to install into a directory other than the default `/usr/local`. This default is a good choice though, as it avoids mixing with the content of `/usr` which is usually managed by the distribution's packaging tool.

- FreeBASIC requires several additional packages to be installed before it can be used to compile executables. In general, these are:
  - binutils
  - libc development files
  - gcc
  - g++ (or rather, libsupc++, part of libstdc++)
  - libncurses development files
  - X11 development files (for FB graphics programs)
  - libffi development files (for the Threadcall keyword)

The actual package names to install vary depending on the GNU/Linux distribution.
Debian/Ubuntu x86 (32bit):

- gcc, g++
- libncurses5-dev
- libx11-dev, libxext-dev, libxrender-dev, libxrandr-dev, libxpm-dev
- libffi-dev

Debian/Ubuntu amd64 (64bit):

- gcc-multilib, g++-multilib
- lib32ncurses5-dev
- libx11-dev:i386, libxext-dev:i386, libxrender-dev:i386, libxrandr-dev:i386, libxpm-dev:i386

older Debian/Ubuntu amd64 (64bit), before the switch to multiarch:

- gcc-multilib, g++-multilib
- lib32ncurses5-dev
- ia32-libs
- lib32ffi-dev

OpenSUSE x86 (32bit):

- gcc, gcc-c++
- ncurses-devel
- xorg-x11-devel
- libffi46-devel

OpenSUSE x86_64 (64bit):

- gcc-32bit, gcc-c++-32bit
- ncurses-devel-32bit
- xorg-x11-devel-32bit
- xorg-x11-libX11-devel-32bit
- xorg-x11-libXext-devel-32bit
- xorg-x11-libXrender-devel-32bit
- xorg-x11-libXpm-devel-32bit
- libffi46-devel-32bit

- Unless you already have a text editor or IDE, you should install one too, as FreeBASIC itself does not include one. An IDE can be used to write and save .bas files and to launch the FreeBASIC Compiler to compile them. The following IDEs are known to explicitly support FreeBASIC:
  - Geany

To uninstall FreeBASIC from `/usr/local`, you can run the install.sh script again, but with the -u option: `sudo ./install.sh -u`
DOS

- Download the latest FreeBASIC-x.xx.x-dos.zip archive
- Find a place for FreeBASIC with at least 13 MiB free space.
- Unpack the ZIP archive, making sure that the directory structure as used inside the archive is preserved ("PKUNZIP -d" for example).
- The top-level directory is named FreeBASIC-x.xx.x-dos (will be truncated to "FREEBASI" in DOS without full LFN support), so you might want to rename it then to a convenient DOS-compliant name not longer than 8 characters and containing no white-spaces, like "FB".
- All the important files used by the compiler (includes, libs) inside the archive do have DOS-compliant names, therefore DOSLFN is not required to use FreeBASIC, however, some examples and texts do have longer names and will be truncated when extracted without full LFN support.

(Note: you can install the DOS version "over" the Windows one or vice-versa, or "merge" those installations later, but rename the FBC.EXE file of the previous installation to FBCW.EXE , FBCD.EXE or such, or it will be overwritten by the new one. Other platform specific files are placed in subdirectories making sure that they won't conflict.)
See also

- Invoking the Compiler
- Compiler Command Line Options