Web site: delorie.com/djgpp/
Platform: DOS, Windows
License: GNU GPL
First release: 1989
DJGPP – a complete 32-bit C/C++ development system for Intel 80386 (and higher) PCs running DOS. It includes ports of many GNU development utilities. The development tools require a 80386 or newer computer to run, as do the programs they produce. DJGPP, an acronym for DJ’s GNU Programming Platform1, is a project which brings the GNU development tools to MS-DOS and MS-Windows systems. Its originator and principal maintainer is DJ Delorie; that’s where the “DJ” in DJGPP comes from.
Here’s how DJ Delorie himself describes the genesis of DJGPP2:
DJGPP was born around 1989 […], when Richard Stallman spoke at a meeting of the Northern New England Unix Users Group (NNEUUG) at Data General, where I then worked. I asked if the FSF ever planned on porting gcc to MS-DOS […], and he said it couldn’t be done because gcc was too big and MS-DOS was a 16-bit operating system. Challenge in hand, I began.
Features provided by DJGPP:
– Compatible headers and libraries.
– Long command lines.
– Unix-style file-name globbing.
– Extending the shell via the system function.
– Transparent conversion of special file names.
– Filesystem extensions.
– Support for long file names.
– Emulation of links.
– Emacs compatibility.
– DJGPP-specific extensions to GNU utilities.
The first version of GCC ported by DJ was 1.35. It was compiled on a 386 machine running ISC Unix, linked with a hacked libc.a taken from that machine which had DOS-compatible replacements for system calls such as open, read, stat, etc. and converted to a DOS executable format with a custom program written by DJ: a first version of DJGPP, originally called djgcc, was born. It required Phar Lap’s DOS Extender to run protected-mode code on top of real-mode DOS.
Version 2.0 of DJGPP was shipped in February 1996, after more than two years of development and testing. The v2 library is Posix-compliant, the only library that offers Posix compliance on MS-DOS, and one of the two available for MS-Windows. It also introduced transparent and automatic support of long file names on Windows 9X.
Version 2.01 was released in October 1996. The GNU Software for MS-Windows and MS-DOS CD-ROM, based on DJGPP v2.01 ports of many GNU packages, was released in the last quarter of 1998, and its first edition out-sold all other GNU CD-ROMs.
The latest version 2.02 of DJGPP was released in December 1998.
DJGPP is about Free Software. The ported GNU packages are free; however, the library and utilities developed specifically for DJGPP are also distributed under the GNU license.