Présentation
Cygwin se compose, d'une bibliothèque qui implémente l'
API système de POSIX en faisant appel au système
Win32, des outils de développement du
GNU (tels que
GNU Compiler Collection et
GNU Debugger) qui permettent des tâches de base de développement de logiciel, et de quelques programmes d'application équivalents aux programmes courants des systèmes Unix. Le système de fenêtre X,
XFree86 a été implémenté en 2001 sous Cygwin. La bibliothèque Cygwin est une
DLL nommée
cygwin1.dll.
Le paquetage inclut également une bibliothèque appelée MinGW qui travaille avec la bibliothèque MSVCRT, une partie intégrante de Windows. Les besoins de MinGW, en mémoire et espace disque, sont moins importants que ceux de la bibliothèque Cygwin. De plus, MinGW est distribuée sous une licence moins contraignante, et peut se lier à n'importe quel logiciel, mais n'implémente pas autant de spécifications POSIX que le fait la bibliothèque de Cygwin.
Cygwin rend possible en particulier l'exécution d'un shell (bash le plus souvent) dans un environnement Windows, ce qui permet d'utiliser un PC sous Windows de manière très similaire à un ordinateur sous une version d'Unix. Il est même possible de lancer une interface graphique comme surcouche de Cygwin, par exemple KDE ou GNOME.
Licence
Red Hat place la bibliothèque de Cygwin sous la licence libre du GNU mais donne la possibilité à tout logiciel libre dont la licence se conforme aux conditions de source disponible de se lier à la bibliothèque. (Red Hat rend également possible de distribuer des programmes sous licence commerciale et d'intégrer la bibliothèque Cygwin dans des distributions propriétaires.)
Cygwin comme plate-forme de développement
Cygwin est souvent utilisé pour exécuter les outils de compilation
gcc sous
Windows : associés à un éditeur de texte, Cygwin et
gcc fournissent ainsi un environnement de développement gratuit et libre de droits pour ce
système d'exploitation. Les exécutables compilés avec
gcc requièrent la présence de la bibliothèque Cygwin (
cygwin1.dll) pour s'exécuter. Néanmoins, si l'application développée n'utilise aucune fonctionnalité Unix (les signaux, par exemple) alors elle peut être compilée avec l'option -mno-cygwin, c'est alors une application Windows indépendante de toute DLL. Dans ces conditions, Cygwin offre donc une solution de développement pour Windows. Cygwin est livré avec d'autres outils pour les développeurs :
make bien sûr, mais aussi des
langages de scripts comme
Perl,
Python et
Ruby.
Voir aussi
Lien interne
Lien externe