About the compiler

[next] [prev] [prev-tail] [tail] [up]

### 1.2 About the compiler

Free Pascal is a 32- and 64-bit Pascal compiler. The current version (3.2.2) can compile code for the following processors (the list is not exhaustive):

- Intel i386 and higher (i486, Pentium family and higher)
- AMD64/x86_64
- PowerPC
- PowerPC64
- SPARC
- ARM
- The m68K processor is supported by an older version.
- JVM
- Javascript
- aarch64
- Intel 8086.

The compiler and Run-Time Library are available for the following operating systems:

- dos
- linux
- Amiga (version 0.99.5 only)
- Windows
- Mac OS X and iOS.
- os/2 (optionally using the EMX package, so it also works on DOS/Windows)
- FreeBSD
- BeOS
- Solaris
- NetBSD
- Netware
- OpenBSD
- MorphOS
- Symbian

The complete list is at all times available on the Free Pascal website.

Free Pascal is designed to be, as much as possible, language and source-level compatible with ISO pascal, Mac Pascal, Turbo Pascal 7.0 and most (if not all) versions of Delphi. It achieves this through a system of compiler directives which tell the compiler what language is targeted (they can be mixed to a certain degree).

It also differs from them in the sense that you cannot use compiled units from one system for the other, i.e. you cannot use TP compiled units.

Also, there is a text version of an Integrated Development Environment (IDE) available for Free Pascal. Users that prefer a graphical IDE can have a look at the Lazarus1 or MSEIDE2 projects.

Free Pascal consists of several parts :

1.
  The compiler program itself.
2.
  The Run-Time Library (RTL).
3.
  The packages. This is a collection of many utility units, ranging from the whole Windows 32 API, through native ZIP/BZIP file handling to the whole GTK-2 interface.
4.
  The Free Component Library. This is a set of class-based utility units which give a database framework, image support, web support, XML support and many many more.
5.
  Utility programs and units.

Of these you only need the first two, in order to be able to use the compiler. In this document, we describe the use of the compiler and utilities. The supported (Object) Pascal Language constructs are described in the Reference Guide, and the available routines (units) are described in the RTL and FCL Unit reference guides.

1 Lazarus homepage at http://http://www.lazarus-ide.org/

2 MSEIDE+MSEGUI homepage at http://www.msegui.org/

[next] [prev] [prev-tail] [front] [up]