Guide: What is DJGPP?
DJGPP is a freely available 32-bit development system, based on the
GNU development suite, that runs on and produces programs for PC
compatible computers with a 386 or higher processor and running DOS or
a DOS-compatible operating system or emulator.
That's a mouthful, but it's true. Let's take it one bit at a time,
- DJGPP is freely available.
- Note that the intent here is that you can legally copy DJGPP from
a friend, even if you don't pay a cent for it, but it does
not imply that you are entitled to a no-cost copy of DJGPP,
or that you may not charge a fee for it. Please note, however, that
there are a few "official" ways of getting DJGPP, and these should be
checked to make sure you have the latest version if you get your copy
from some other source (BBS, friends, etc). DJGPP is also a "royalty
free" system, in that you may (in most cases) sell programs you write
with any terms and conditions you want.
- DJGPP is 32-bit.
- In order to use DJGPP, or run any program you write with DJGPP,
you must have a 32-bit CPU in your machine. This means an 386, 486,
etc. You cannot use djgpp on a 286. However, all your
programs will use 32-bit integers, 32-bit pointers, and will no longer
worry about running into the 64K or 640K barriers.
- DJGPP is a development system.
- The purpose of DJGPP is to give you the ability to create new
software, from scratch. Since you and the computer don't speak the
same language, what you type must somehow be converted into a language
the computer understands. This is what a development system does.
DJGPP includes all the tools you need to develop programs, including
an editor (emacs), compiler (gcc), debugger (gdb), and the runtime
- DJGPP is based on the GNU development suite.
- Most of the core programs of DJGPP, like gcc, as, ld, and gdb,
come from the GNU project, which is creating set of freely
redistributable Unix programs, some of which are a Unix development
environment. These programs have been ported to DJGPP and are used to
form the core of its development tools. For more information about
the GNU project, see http://www.fsf.org/
- DJGPP runs on and produces programs for ...
- Since DJGPP was built with itself, the set of machines that DJGPP
runs on and the set of machines that DJGPP-built programs run on are
the same set of machines.
- ... PC compatible computers
- The target hardware for DJGPP programs is the PC platform.
- ... with a 386 or higher
- You cannot use DJGPP on a 286, because that's not a 32-bit
- ... running DOS
- Yes, I know Windows is "the wave of the future", but I don't like
it, so I don't support it. DJGPP is for making DOS programs, and if
you can convince it to make a Windows program, good for you.
- ... or a DOS-compatible operating system
- DJGPP programs run under Windows' "dos prompt" boxes, OS/2's dos
box, PC-DOS, MS-DOS, NDOS, and other compatible operating systems.
- ... or emulator
- You can run DJGPP programs in Linux's DOS emulator or any other
emulator that emulates a 386 and supports the DPMI interface.