DJGPP

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
DJGPP
Image illustrative de l'article DJGPP
Logo

Capture d'écran de DJGPP, montrant une utilisation de GCC.
Capture d'écran de DJGPP, montrant une utilisation de GCC.

Développeur DJ Delorie
Écrit en C, C++
Environnement MS-DOS
Type Environnement de développement
Licence GNU GPL
Site web www.delorie.com

DJGPP (DJ's GNU Programming Platform) est un environnement de développement intégré créé par DJ Delorie, en portant GCC et les logiciels qui l'accompagnent sous DOS.

Il s'agissait de fournir sous DOS un atelier logiciel permettant de travailler avec les codes sources d'applications du monde Unix. À l'époque où ce projet a été conçu, les Unix étaient encore relativement rares et coûteux, alors que MS-DOS était très banal et disponible sur des ordinateurs à bas coût par rapport aux stations de travail Unix.

DJ Delorie a entamé ce travail en 1989 à la suite d'un séminaire où Richard Stallman affirmait qu'il ne porterait pas son compilateur sous DOS car cet OS était trop rudimentaire pour supporter toutes les fonctionnalités de GCC.

Dernière version : 2.0.3p2, datée du 10 juin 2002. Certains outils sont cependant tenus à jours : ainsi GCC est disponible en version 4.6.1 (en août 2011).

DJGPP est une plate-forme de programmation 32-bit pour PC à base de processeur 386 ou supérieur, qui tourne sous MS-DOS ou compatibles. Il a été créé par DJ Delorie, qui a démarré le projet en 1989. C'est un portage du compilateur GCC, ainsi que de nombreux autres utilitaires GNU tels que bash, find, tar, ls, mv, awk, sed, et ld. Il possède un IDE de développement nommée RHIDE, dont l'interface est proche des versions de Turbo C et Turbo Pascal utilisant la Turbo Vision.

Il permet de créer des programmes DOS traditionnels ou des programmes 32 bits grâce au DPMI (DOS Protected Mode Interface). Il utilise un modèle de mémoire « plat », où le code et les segments de données sont mêlés. D'autres segments peuvent être accessibles indirectement.

Quake pour DOS a pu être compilé avec DJGPP, ainsi que d'autres programmes tels que p7zip, VIM, BIEW, UPX, NASM, Perl et NetHack. Des versions anciennes de WINE et de wxWidgets ont pu être portées sous DOS grâce à DJGPP.

DJGPP est toujours utilisé pour compiler certains systèmes d'exploitation comme nonameos ou l'extender DOS/Win32 de Japheth.

Compatibilité[modifier | modifier le code]

DJGPP présente au programmeur une interface qui est compatible avec la norme ANSI C et C99. Presque toutes les extensions de GCC sont supportés, sauf certaines comme les « pipes ».

Les binaires peuvent être compilés avec des noms de fichiers longs et permettent l'utilisation de ces noms de fichiers sous Windows 9x mais pas sous Windows NT.

Les programmes DOS 32 bits développés avec DPMI peuvent être utilisés sous Windows, mais ils n'ont pas accès aux API Win32.

Annexes[modifier | modifier le code]

Les ports Windows 32 bits de la GNU Toolchain[modifier | modifier le code]

  • Cygwin - une couche UNIX compatible avec de nombreuses bibliothèques et des applications
  • MinGW - un port de la chaîne d'outils GNU pour Windows, conçu pour l'exécution exigeant un environnement minimum de programmation

Liens externes[modifier | modifier le code]