Free Pascal - Advanced open source Pascal compiler for Pascal and Object Pascal - Home Page
Home<br>News<br>Download<br>Wiki<br>Forum<br>Documentation<br>Bug tracker
free pascal
Open source compiler for Pascal and Object Pascal
General
Home<br>News<br>Download<br>Wiki<br>Forum<br>Documentation<br>Bug tracker
Coding
Development<br>Future Plans<br>Known Problems
FAQ<br>Contributed Units<br>More information<br>Mailing Lists<br>Porting from TP7<br>Authors<br>Credits<br>Links/mirrors
Tools
Tools<br>Delp<br>FPCMake<br>H2Pas<br>PPDep<br>PPUDump<br>PPUMove<br>PtoP<br>RSTConv<br>TPLY<br>FCL<br>Packages
Search
Search documentation, forums & mailing lists.
Introduction
Overview
Free Pascal is a mature, versatile, open source Pascal compiler.<br>It can target many processor architectures: Intel x86 (16 and 32 bit), AMD64/x86-64,<br>PowerPC, PowerPC64, SPARC, SPARC64, ARM, AArch64, MIPS, Motorola 68k, AVR, and the JVM.<br>Supported operating systems include Windows (16/32/64 bit, CE, and native NT), Linux,<br>Mac OS X/iOS/iPhoneSimulator/Darwin, FreeBSD and other BSD flavors, DOS (16 bit, or 32 bit DPMI),<br>OS/2, AIX, Android, Haiku, Nintendo GBA/DS/Wii, AmigaOS, MorphOS, AROS, Atari TOS, and various<br>embedded platforms. Additionally, support for RISC-V (32/64), Xtensa, Z80 architectures,<br>WebAssembly and for the LLVM compiler infrastructure is available in the development version.<br>Additionally, the Free Pascal team maintains a transpiler for pascal to Javascript called pas2js.
Latest News
Jan 4, 2024
The creator of the Pascal Language, Niklaus Wirth, passed away on January 1st.<br>Free Pascal would not have existed without the work of Niklaus Wirth.<br>We mourn a pioneer and a source of inspiration.
August 8th, 2021
FPC has moved to Gitlab!
All SVN repositories have been converted to git and moved to gitlab.<br>The Mantis bugtracker has also been converted to gitlab.
You can find instructions in the Development page<br>or in the Wiki.
Bugs can be reported here.
May 20th, 2021
FPC version 3.2.2 has been released!
This version is a point update to 3.2.0 and contains bugfixes and updated packages,<br>some of which are high priority. In this case a new target was also backported<br>from trunk.
There is a list of changes that may break backward compatibility.<br>You can also have a look at the FPC 3.2.2 documentation.
Downloads are available at the download section. Some links might be stale but will be updated in the coming days.<br>If you have trouble using FTP due to recent browser updates, try the sourceforge mirror.
June 19th, 2020
FPC version 3.2.0 has been released!
This version is a major new release and contains bugfixes and updates packages, new features and new targets. Due to the<br>age of the FPC 3.0 branch (5 years!) it is recommended to upgrade as soon as possible.
There is a list of changes that may break backward compatibility.<br>You can also have a look at the FPC 3.2.0 documentation.
Downloads are available at the download section. Some links might be stale but will be updated in the coming days.
July 20, 2019
FPC has gained several new features lately in trunk (which will not be in the upcoming FPC 3.2.0 release):
Multiple helper types can now be active at the same time
Support has been added for custom attributes
The compiler can now generate LLVM bitcode for select platforms (Darwin/x86-64, Linux/x86-64, Linux/AArch64, Linux/ARMHF)
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
Older news...
Current Version
Version 3.2.2 is the latest stable version of Free Pascal.<br>Hit the download link and select a mirror close<br>to you to download your copy.<br>The development releases have version numbers 3.3.x.<br>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<br>with most versions of Delphi (classes, rtti, exceptions, ansistrings, widestrings, interfaces).<br>A Mac Pascal mode, largely compatible with Think Pascal and MetroWerks Pascal, is also available.<br>Furthermore Free Pascal supports function overloading, operator overloading, global properties and<br>several other extra features.
Requirements
x86 architecture:
For the 80x86 version at least a 386 processor is required, but a 486<br>is recommended. The Mac OS X version requires Mac OS X 10.4 or later,<br>with the developer tools installed.
PowerPC architecture:
Any PowerPC processor will do. 16 MB of RAM is required. The Mac OS<br>classic version is expected to work System 7.5.3 and later. The Mac OS X version<br>requires Mac OS X 10.3 or later (can compile for 10.2.8 or later), with the developer tools installed.<br>On other operating systems Free Pascal runs on any system that can run the operating<br>system.
ARM architecture
16 MB of RAM...