Accueil » Divers

GtkAda 2.2 sous Windows

3 avril 2003 Pas de commentaires

Comment obtenir un GtkAda 2.2 fonctionnel sous Windows NT/2K/XP.

Environnement: Gcc 3.2 + GnatGcc 3.2 + GtkAda 2.2 sous windows NT (v 0.3)

Remerciements à l’équipe d’ACT, à Jeffrey Creem et tous les abonnés de la liste de diffusion GtkAda.

Note: une traduction anglaise de cet article existe

Introduction

L’arborescence suggérée prend en compte les chemins codés en dur de gcc, afin de garantir une bonne reproductibilité d’installation.

Je ne suis pas un expert d’Ada, ni un «gourou» de gcc. Je suis juste débutant dans ce domaine. N’hésitez pas à corriger ou améliorer cet article.

Le répertoire racine doit être x:\mingw, où x est votre disque d’installation. Dans l’exemple ci-dessous, le disque d’installation est c:.

Vous pouvez choisir n’importe quel disque pourvu que vous gardiez le répertoire racine \mingw.

Je crois qu’il y a plusieurs autres voies pour arriver au résultat, mais celle-ci est simple et facile.

À la fin de la procédure d’installation, vous obtiendrez deux répertoires :

- c:\gnu contenant tous les paquets prêts pour une nouvelle installation
- c:\mingw contenant une installation fonctionnelle de gnatgcc avec GtkAda

Téléchargement des paquets

Création des répertoires:
- Créer c:\gnu
- Créer c:\gnu\mingw
- Créer c:\gnu\gtk
- Créer c:\gnu\gtkada

Charger MinGWin
de vers c:\gnu\mingw:
- MSYS-1.0.8.exe
- MinGW-2.0.0-3.exe

Charger GnatGCC de vers c:\gnu\mingw:
- gcc-3.2-Ada-20020817-1.tar.gz

Charger Gtk de
vers c:\gnu\gtk:
- gettext-dev-0.10.40-20020904.zip
- libintl-0.10.40-tml-20020904.zip
- pkgconfig-0.14.zip
- atk-1.0.3-20020821.zip
- atk-dev-1.0.3-20020821.zip
- glib-2.2.0-20030112.zip
- glib-dev-2.2.0-20030112.zip
- gtk+-2.2.0-20030119.zip
- gtk+-dev-2.2.0-20030119.zip
- pango-1.0.5-20021201.zip
- pango-dev-1.0.5-20021201.zip

Charger de
vers c:\gnu\gtk\gtkada:
- libiconv-1.8-w32-1.bin.zip
- freetype-2.1.2-bin.zip
- freetype-2.1.2-1-lib.zip
- jpeg-6b-1-bin.zip
- jpeg-6b-1-lib.zip
- libpng-1.2.4-1-bin.zip
- libpng-1.2.4-1-lib.zip
- tiff-3.5.7-bin.zip
- tiff-3.5.7-lib.zip
- zlib-1.1.4-bin.zip
- zlib-1.1.4-lib.zip

Charger GtkAda de
vers c:\gnu\gtkada.

Télécharger le dernier cliche (snapshot) de GtkAda avec les commandes :

cvs -d :pserver:anoncvs@libre.act-europe.fr:/anoncvs login
(mot de passe vide)
cvs -d :pserver:anoncvs@libre.act-europe.fr:/anoncvs co GtkAda

Installation

Remarque importante: Dans la procédure d’installation décrite ci-dessous, quelques fichiers déjà installés seront écrasés.

Gnatgcc

Lancer MinGW-2.0.0-3.exe. À la question Select Destination Directory, répondre c:\mingw.

Lancer MSYS-1.0.8.exe. À la question Select Destination Directory, répondre c:\mingw\msys.

À la question Do you wish to continue with the post install, répondre y.

À la question Do you have MinGW installed, répondre y.

À la question Where is you MinGW installation, répondre c:/mingw.

Décompresser gcc-3.2-Ada-20020817-1.tar.gz vers c:\mingw

GTK+

Créer c:\mingw\gtk.

Décompresser vers c:\mingw\gtk :
-c:\gnu\gtk\gettext-dev-0.10.40-20020904.zip
-c:\gnu\gtk\libintl-0.10.40-tml-20020904.zip
-c:\gnu\gtk\pkgconfig-0.14.zip
-c:\gnu\gtk\atk-1.0.3-20020821.zip
-c:\gnu\gtk\atk-dev-1.0.3-20020821.zip
-c:\gnu\gtk\glib-2.2.0-20030112.zip
-c:\gnu\gtk\glib-dev-2.2.0-20030112.zip
-c:\gnu\gtk\gtk+-2.2.0-20030119.zip
-c:\gnu\gtk\gtk+-dev-2.2.0-20030119.zip
-c:\gnu\gtk\pango-1.0.5-20021201.zip
-c:\gnu\gtk\pango-dev-1.0.5-20021201.zip
-c:\gnu\gtk\freetype-2.1.2-bin.zip
-c:\gnu\gtk\freetype-2.1.2-1-lib.zip
-c:\gnu\gtk\jpeg-6b-1-bin.zip
-c:\gnu\gtk\jpeg-6b-1-lib.zip
-c:\gnu\gtk\libpng-1.2.4-1-bin.zip
-c:\gnu\gtk\libpng-1.2.4-1-lib.zip
-c:\gnu\gtk\tiff-3.5.7-bin.zip
-c:\gnu\gtk\tiff-3.5.7-lib.zip
-c:\gnu\gtk\zlib-1.1.4-bin.zip
-c:\gnu\gtk\zlib-1.1.4-lib.zip

Créer c:\tmpiconv

Décompresser libiconv-1.8-w32-1.bin.zip vers c:\tmpiconv,

Copier:
-c:\tmpiconv\iconv.exe vers c:\mingw\gtk\bin,
-c:\tmpiconv\*.dll vers c:\mingw\gtk\lib,
-c:\tmpiconv\iconv.lib vers c:\mingw\gtk\lib,
-c:\tmpiconv\iconv.lib vers c:\mingw\gtk\lib\libiconv.a,
-c:\tmpiconv\iconv.h vers c:\mingw\gtk\include,
-c:\tmpiconv\libcharset.h vers
c:\mingw\gtk\include.

Effacer c:\tmpiconv.

Ouvrir le panneau de configuration, l’applet système, option Avancée, puis cliquer sur le bouton variables d'environnement.

Ajouter au PATH c:\mingw\gtk\bin et c:\mingw\gtk\dll

GtkAda 2

Modification manuelle des sources: il y a deux manières de faire.

- La manière propre (à mon goût).
-* Dans c:\gnu\gtkada\src\makefile.in, ajouter à la ligne 15 le paramètre -mms-bitfields afin d’obtenir la ligne suivante :
CFLAGS = @CFLAGS@ -mms-bitfields -Wall @GTK_CFLAGS@ -I.. $(FPIC).
-* Dans c:\gnu\gtkada\src\opengl\makefile.in, ajouter à la ligne 10 le paramètre -mms-bitfields afin d’obtenir la ligne suivante :
CFLAGS = @CFLAGS@ -mms-bitfields -Wall @GTK_CFLAGS@ -I. $(FPIC).
-* Dans c:\gnu\gtkada\src\gtkextra\makefile.in, ajouter à la ligne 10 le paramètre -mms-bitfields afin d’obtenir la ligne suivante :
CFLAGS=@CFLAGS@ -mms-bitfields.

- La manière paresseuse : la seule pour la plupart d’entre nous.
-* Juste avant de compiler, tapez :
CC='gcc -mms-bitfields'; export CC
-* En utilisant l’icône Msys du bureau, lancer Msys, et tapez alors :

cd /c/mingw/gtk
patch -p0 < ../contrib/gtkada-2.0-win32.diff

-* Quittez Msys

Installation

- Copiez c:\gnu\gtkada dans c:\mingw\gtk
- Lancez Msys
- Tapez&nbsp:
cd /c/mingw/gtk
./configure --prefix=/d/mingw/gtk --build=i386-pc-mingw32 --target=i386-pc-mingw32 --host=i686-windows-mingw32
make install

- Test: lancez c:\mingw\gtk\testgtk\testgtk.exe pour valider l'installation.

À faire

Intégration du paquet Open Gl

GtkAda 2.2 pour NT est désormais disponible officiellement.
Le travail de Stéphane reste toutefois intéressant car :

- il permet de disposer d'un environnement Ada pour NT basé sur gcc 3.2. Ceci ouvre une voie vers de nouveaux back-ends 8 bits, comme les 68HC1x et Atmel AVR.

- il explique en détail tout le montage.

Pour faciliter l'accès à ce travail, une archive au format tar.gz de l'arborescence complète est disponible ici.
Elle est datée du 25 aout 03, et fait 46 Mo.

Tout ceci est essentiellement à but éducatif et prospectif, et Stéphane ne conseille pas de faire de la production avec.

Merci encore à lui.

Laissez un commentaire

Ajoutez votre commentaire ci-dessous, ou créez un rétrolien depuis votre site. Vous pouvez également souscrire à ces commentaires par RSS.

Merci de vous conformer à la netetiquette.

Vous pouvez utiliser ces balises :
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>