Recent Changes - Search:

Recently Written


edit SideBar


1.  About

This is a port of GNU’s GCC/G++ and Fortran95 compiler to DOS (thus uses GCC as compiler core). Very good environment for porting Linux programs to DOS, the included C library “emulates” many aspects of Linux to a much higher degree than other compilers. It is a 32-bit compiler (GCC now also supports 64-bit on non-DOS platforms) and uses a DPMI host (“server”) (“raw” DPMI, use CWSDPMI or HDPMI32) so it can use all of your RAM. Since cca 2003 (?) there were 2 branches: 2.03 stable and 2.04 beta, after letting the world and the users wait for 12 years (and porting many new GNU releases into both DGJPP branches), the developers released 2.05 2015-Nov-03, so there is no stable or final 2.04. The developers are still active now (2015), but project goal and future are unclear/unknown, most discussions are about “missing” 64-bit support.

Main project page and download :

Mailing list archive :…Changes-in-2_002e05 (not much)…Changes-in-2_002e04 (much)

There also is a support library to provide new functions from CVS (now obsolete?).


The latest version of CWSDPMI is r7 from 2010-Jan and supports (just enables) SSE2, previous r6 was alpha only, and r5 from 2000 had many silent updates until 2008.

3.  DJGPP + HX-Extender

How can you use HX-Extender with DJGPP? Here… (dead) you will find some informations (DJGPP 2.03 only, experimental). Applies 2 hacks: changes executable format from COFF to PE, and memory model from non-ZERO-based to zero-based. Note: there is now also support for fully standalone executables: Minimal PE loader for “native” DOS PE/PX executables (no DLL support) with built-in HDPMI32, named LOADPEX (35 KiB).

4.  Support of ELF and DXE3

Using of ELF in DJGPP instead of COFF is possible! ELF is a common standard file format for executables, object code, shared libraries, and core dumps. So support of shared libraries in DJGPP is possible like in Linux. Also compiled libraries are usable in DOS and in Linux.

More infos were at (dead) . I hope, that these patches will be included into DJGPP source code. The author Daniel Borca also provides:

  • (obsolete ?) DXE3 “DLL” support for DJGPP
  • D3X , a DOS extender, see DPMI for details
  • MESA (graphics) for Linux and DJGPP

5.  Updated: Support library for DJGPP (libsupp)

This library adds new functions to DJGPP which are in the CVS of DJGPP but haven’t been included into main package yet. You will find useful infos at the mailing list of DJGPP. It can only be used with DJGPP 2.04 beta (obsolete now?).

A list of features can be found here.

FTP directory with current and old versions:

6.  GPM library for DJGPP

Blair Campbell released this library which can be downloaded at Announcement at FreeDOS mailing list:

I’ve written a small gpm-semi-compatible library that implements enough functionality for GNU ncurses and libraries like ‘dialog’ that depend on that. I can send a demo dialog.exe compiled with it to anyone interested. In addition to ‘make install’, you will also have to copy keyboard.h to /dev/env/DJDIR/include/linux to get ncurses to compile with it.

GPM adds mouse support to text-based Linux applications and libraries like ncurses.

7.  New: Ncurses and Dialog for DJGPP

Blair Campbell also ported Ncurses (v5.7, and Dialog (v1.1, ( to DJGPP using GPM.

8.  Tiny packages by Rugxulo

Version GCC from 1997 August 22, fast, can compile itself on DOS, no C++.

Related discussion:…

9.  See also

Edit - History - Print - Recent Changes - Search
Page last modified on May 11, 2016, at 10:01 AM