Free Pascal - 3.2.2

Free Pascal is a complete, flexible and 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 JVM.

What is Free Pascal?

Free Pascal is a complete, flexible and 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 JVM.

Supported operating systems include Windows (16/32/64 bit, native CE and NT), Linux, Mac OS X/iOS/iPhoneSimulator/Darwin, FreeBSD and other BSD varieties, DOS (16 bit or 32 bit DPMI), OS/2, AIX, Android, Haiku, Nintendo GBA/DS/Wii, AmigaOS, MorphOS, AROS, Atari TOS and other embedded platforms.

Additionally, support for RISC-V (32/64), Xtensa and Z80 architectures, as well as for the LLVM compiler infrastructure are available in the development version. In addition, the Free Pascal team maintains a Pascal to Javascript converter called pas2js.

Free Pascal - 3.2.2 Picture 1Free Pascal - 3.2.2 Picture 1

Current version

Version 3.2.2 is the latest stable release of Free Pascal. Click the download link and select the version that matches your operating system. Development builds have version numbers of 3.3.x. See the Development page for information on how to find the latest sources and support development.

 

Features of Free Pascal

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. Additionally, Free Pascal supports function overloading, operator overloading, global properties and a number of other additional features.

Free Pascal for Turbo Pascal and Delphi is pretty complete up to version D7. Turbo Pascal's compatibility is pretty great as it can run on 32/64-bit platforms, without an emulator (which is a bit better than Delphi).

Delphi compatibility is improving, but packages are still lacking in general. COM support (dispid and friends) is also absent.

A mode that implements the most important Mac Pascal (CW Pascal) constructs also exists. This mode can also be used to port ISO pascal code, as it implements some ISO constructs that TP/Delphi does not have, including pre-Delphi Object Pascal support.

Compiler Dialect mode can be implemented individually on each unit, so multiple modes can be used in the same program.

In addition to these compatibility modes, Free Pascal also has two separate modes, FPC and OBJFPC (Object FPC). Both are more or less stripped-down versions of TP and Delphi modes with some extensions. Currently, libraries are a bigger barrier to porting than the language itself.

Compiler supports i386, Power (PC), Sparc, Arm9 architectures. Core OS (Level 1) support is Windows (32/64/CE), Linux, FreeBSD (x86 only), and Mac OS X. Netware (classic and libc) and OS/2 ports are also on a regular release cycle.

The base libraries are a combination of TP and Delphi, as well as some additional native units and classes. Specific parts of Free Pascal often abstract away certain operating system features in a platform-independent manner.

 

Request

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 classic Mac OS version is expected to run on systems running 7.5.3 or later. The Mac OS X version requires Mac OS X 10.3 or later (can compile to 10.2.8 or later), with the developer tools installed. On other operating systems, Free Pascal will run on any system that can run the operating system.

ARM Architecture

16MB RAM required. Runs on any ARM Linux installation.

Sparc Architecture

16MB RAM required. Runs on any Sparc Linux installation (solaris in testing).

License

The packages and runtime libraries have a modified GNU Public License Library to allow the use of static libraries when building applications. The compiler source code itself has a GNU General Public License. Sources for both the compiler and runtime libraries are available, the complete compiler is written in Pascal.

4 ★ | 2 Vote