Next: , Up: Installation

4.1 Where and what to download

You can download the source code of the current GNU Pascal release from

and binaries for some platforms from

The binary archive files are named gpc-version.platform.extension – for example gpc-2.1.alpha-unknown-linux-gnu.tar.gz for GPC version 2.1 on an Alpha workstation running the Linux kernel with GNU C Library, or gpc-20000616.i386-pc-msdosdjgpp for GPC version 20000616 on an Intel IA32 compatible PC running DOS with DJGPP.

After you have downloaded the correct archive file for your platform, please read the installation notes on how to install such a binary distribution.

If you are running Dos or MS Windows, you will need additional tools – see “What else to download and where” below.

Current snapshots

GNU Pascal is subject to steady development. Alpha and beta snapshots (source only, use at your own risk) can be found at:

What else to download and where

When you are using GNU Pascal on a DOS system, you will need either the DJGPP or the EMX development environment (see below). On an OS/2 system, you will need EMX. On an MS Windows 95/98/NT system you will need either the CygWin or the mingw32 ot the MSYS environment.

GNU Pascal uses the compiler back-end from the GNU Compiler Collection, GNU CC or GCC. If you want to compile GPC, you will need the source of GCC as well as the source of GPC itself. From the same place as GPC, please download GCC 2.8.1, 2.95.x, 3.2.x, 3.3.x or 3.4.x. (It is also available from any GNU mirror; see


For some of GPC's units, you will need some standard libraries. In particular:

Unit Platform Library
CRT Unix/terminal ncurses >= 5.0 (1), (2)
CRT Unix/X11 PDCurses (2)
CRT Dos, MS-Windows PDCurses (3)
GMP any gmp
RegEx any rx
(debugging) Unix, MS-Windows ElectricFence (4)


(1) ncurses version 5.0 or newer is strongly recommended because older versions contain a bug that severely affects CRT programs.

(2) You can install both ncurses and PDCurses on a Unix system, and choose at compile time whether to generate a terminal or X11 version of your program.

(3) ncurses also runs under MS-Windows with CygWin (not mingw32, however), but doesn't appear to behave much differently from PDCurses on that platform.

(4) ElectricFence is not used by any unit, but can be used for debugging memory allocation bugs by simply linking it (see the accompanying documentation).

You can find those libraries on many places on the Net. Also, many GNU/Linux distributions, DJGPP mirrors and other OS distributions already contain some of the libraries. In any case, you can find the sources of the libraries (sometimes together with patches that you should apply before building if you choose to build from the sources) and binaries for some platforms in

For more information and descriptions of these libraries, see Libraries.


DJGPP is available from any SimTel mirror in the gnu/djgpp subdirectory; for addresses look into the DJGPP FAQ. To use GNU Pascal you need at least

We also recommend you to get:


EMX is an environment for creating 32-bit applications for DOS and OS/2. To develop EMX programs with GNU Pascal you need at least

If your DOS box has DPMI (it does if you are using MS Windows or OS/2) you will also need RSX, available from the same sites as EMX in the subdirectory rsxnt.

The GNU development tools contain the GNU C compiler which is in fact not needed to use GNU Pascal. However, the C library is needed.


CygWin is an environment which implements a POSIX layer under MS Windows, giving it large parts of the functionality of Unix. CygWin contains development tools such as an assembler, a linker, etc. GPC needs for operation. More information about CygWin can be found at


The Minimalists' GNU Win32 environment, mingw32, allows a large number of Unix programs – including GPC and GCC – to run under MS Windows 95/98/NT using native MS libraries. mingw32 ressources can be found at