Skip to content
🎉 Free Pascal v3.2.4 is out! See Release Notes
Supported Platforms

Supported Platforms

Free Pascal Compiler (FPC) is renowned for its exceptional cross-platform capabilities. It is designed around a write once, compile anywhere philosophy, allowing developers to target a massive array of hardware architectures and operating systems from a single codebase.

Below is the full list of platforms officially supported by Free Pascal.

Note that support for a platform or operating systems can be through cross-compilation, native compilation or both: the compiler itself may not run on all platforms.

🖥️ Operating Systems

Desktop & Server

  • Windows: Windows 32-bit (Win32), Windows 64-bit (Win64), Windows on ARM64, Windows CE, and legacy 16-bit Windows.
  • Linux: Supported across all major architectures including x86, x86_64, ARM, AArch64, PowerPC, MIPS, SPARC, m68k, and RISC-V.
  • macOS: Intel (32-bit and 64-bit), Apple Silicon (ARM64), and legacy PowerPC.

BSD & Unix-like Systems

  • BSD Family: FreeBSD, NetBSD, OpenBSD, and DragonFly BSD.
  • Unix: Solaris, AIX.
  • Other unix-like: Haiku, BeOS.

Mobile Operating Systems

  • Android: Native compilation for ARM, AArch64, i386, and x86_64 architectures.
  • iOS & iPadOS: Native compilation for ARM64 and iPhone Simulator targets.

Alternative & Amiga-like Systems

  • Amiga Family: AmigaOS, AROS, MorphOS.
  • The OS/2 family: OS/2, eComStation, ArcaOS.

Web, Virtual & Embedded

  • Web: WebAssembly 32-bit via WASI (alongside client-side JavaScript translation via pas2js).
  • Virtual Machines: Java Virtual Machine (JVM) bytecode, LLVM IR.
  • Embedded / RTOS: Bare metal microcontroller targets, FreeRTOS.

Legacy & Retro Systems

  • DOS: MS-DOS (16-bit via i8086), GO32v2 (32-bit protected mode), Watcom extenders.
  • Classic Apple: Classic Mac OS.
  • Retro Consoles & Home Computers: GameBoy Advance, Nintendo DS, Nintendo Wii, PlayStation 1, ZX Spectrum (Z80), MSX-DOS.
  • Legacy Mobile: Symbian OS, Palm OS.

⚙️ Processor Architectures

FPC generates optimized, native machine code for the following instruction set architectures (ISAs):

  • x86 Family:
    • i386 (32-bit)
    • x86_64 / AMD64 (64-bit)
    • legacy i8086 (16-bit)
  • ARM Family:
    • ARM32 (AArch32, including softfp and hardfloat)
    • ARM64 (AArch64)
  • PowerPC:
    • PowerPC (32-bit)
    • PowerPC64 (64-bit)
  • MIPS:
    • MIPS32 / MIPS64
    • MIPSEL
  • SPARC:
    • SPARC32
    • SPARC64
  • Motorola:
    • m68k (68020+ and ColdFire)
  • Microcontrollers & Others:
    • AVR (Arduino-compatible)
    • RISC-V
    • Xtensa
    • Z80
    • PIC
Platform support is continuously evolving within the open-source community. Core platforms (Windows, macOS, Linux, BSD) receive Tier 1 support, while specialized and legacy architectures are maintained by dedicated community contributors.