Introduction

Overview

Free Pascal is a mature, versatile, open source Pascal compiler. It can target many processor architectures: Intel x86 (16 and 32 bit), AMD64/x86-64, PowerPC, PowerPC64, SPARC, SPARC64, ARM, AArch64, MIPS, Motorola 68k, AVR, and the JVM. Supported operating systems include Windows (16/32/64 bit, CE, and native NT), Linux, Mac OS X/iOS/iPhoneSimulator/Darwin, FreeBSD and other BSD flavors, DOS (16 bit, or 32 bit DPMI), OS/2, AIX, Android, Haiku, Nintendo GBA/DS/Wii, AmigaOS, MorphOS, AROS, Atari TOS, and various embedded platforms. Additionally, support for RISC-V (32/64), Xtensa, and Z80 architectures, and for the LLVM compiler infrastructure is available in the development version. Additionally, the Free Pascal team maintains a transpiler for pascal to Javascript called pas2js.

Latest News

  • June 19th, 2020
  • July 20, 2019

    FPC has gained several new features lately in trunk (which will not be in the upcoming FPC 3.2.0 release): While FPC 3.2.0 will not have support for the above list, it will have its own collection of new features and fixes!

    June 8, 2018

    Today FPC celebrates its 25th birthday ! 25 years have passed since 8 june 1993, and FPC still does not only exists, but is more alive and kicking than ever!

    May 28, 2018

    As required by the European GDPR, we have published a privacy statement

    November 28th, 2017

    FPC version 3.0.4 has been released!

    This version is a point update to 3.0 and contains bugfixes and updates packages, some of which are high priority.

    There is a list of changes that may break backward compatibility. You can also have a look at the FPC 3.0.4 documentation.

    Downloads are available at the download section.

    February 15th, 2017

    FPC version 3.0.2 has been released!

    This version is a point update to 3.0 and contains bugfixes and updates packages

    There is a list of changes that may break backward compatibility. You can also have a look at the FPC 3.0.2 documentation.

    Downloads are available at the download section.

    November 25th, 2015

    FPC version 3.0.0 "Pestering Peacock" has been released!

    This version includes support for several new platforms, codepage-aware strings and an integrated Pascal source-repository.

    We have the traditional lists of new features and changes that may break backward compatibility. You can also have a look at the FPC 3.0.2 documentation.

    Downloads are available at the download section.

    Older news...

    Current Version

    Version 3.2.0 is the latest stable version the Free Pascal. Hit the download link and select a mirror close to you to download your copy. The development releases have version numbers 3.3.x. See the development page how to obtain the latest sources and support development.

    Features

    The language syntax has excellent compatibility with TP 7.0 as well as with most versions of Delphi (classes, rtti, exceptions, ansistrings, widestrings, interfaces). A Mac Pascal mode, largely compatible with Think Pascal and MetroWerks Pascal, is also available. Furthermore Free Pascal supports function overloading, operator overloading, global properties and several other extra features.

    Requirements

    x86 architecture:
    For the 80x86 version at least a 386 processor is required, but a 486 is recommended. The Mac OS X version requires Mac OS X 10.4 or later, with the developer tools installed.
    PowerPC architecture:
    Any PowerPC processor will do. 16 MB of RAM is required. The Mac OS classic version is expected to work System 7.5.3 and later. The Mac OS X version requires Mac OS X 10.3 or later (can compile for 10.2.8 or later), with the developer tools installed. On other operating systems Free Pascal runs on any system that can run the operating system.
    ARM architecture
    16 MB of RAM is required. Runs on any ARM Linux installation.
    Sparc architecture
    16 MB of RAM is required. Runs on any Sparc Linux installation (solaris is experimental).

    License

    The packages and runtime library come under a modified Library GNU Public License to allow the use of static libraries when creating applications. The compiler source itself comes under the GNU General Public License. The sources for both the compiler and runtime library are available; the complete compiler is written in Pascal.