Programmer avec GNAT ADA 95 sour os X

Arthemus

Membre expert
Club iGen
6 Juin 2002
1 727
19
Oise
Bonjour,

Je souhaite installer ce compilateur ADA sur os X.

Après des recherches sur le net, je m'aperçois que la chose n'est pas facile... Il faut charger un tas de soft et peut etre même passer par le terminal

Cela m'étonne en tout cas...

Est ce que j'ai mal cherché ? Connaissez vous un compilateur ADA qui s'installe tout seul sans (trop) faire d'histoires ?

Merci de votre aide.
 
LE compilateur Ada pour Mac OS X :
http://www.adapower.net/macos/macosx.html

Les dernières versions semble très faciles à installer (il y a un installateur Apple, mais uniquement pour Jaguar je crois), et il semble même qu'ils ont commencé à traduire certaines API Carbon en Ada.

J'ai suivi un cours de programmation en Ada l'année dernière et ce compilateur m'a bien aidé. (Même si j'ai toujours eu des problèmes à faire tourner des programmes utilisant des librairires GTK sur X-Windows)

Petite précision : il faudra tout de même te familiariser avec le Terminal, c'est le "seul" moyen pour compiler avec GNAT.
 
Merci de ta réponse,

Mais je connaissais ce site. J'ai bien téléchargé cet installateur et même d'autres trucs recommandés sur un autre site français.

Et bien je suis complétement perdu !

Qu'est ce que je fais de tout ça ???
J'ai bien essayé des trucs avec le terminal mais ça ne marche pas...

Cela m'ennuie car je vais étudier ce langage cette année et je ne voudrais pas devoir m'acheter un pc /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/frown.gif /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/frown.gif /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/frown.gif .

Est ce que tu pourrais m'expliquer comment tu as faits pour l'installer ?

Merci en tout cas.
 
Voici ce qu'il faut faire :

1) Télécharger le fichier le compilateur GNAT (GNU Ada Translator, en réalité, le compilateur GNAT n'en est pas un. Il traduit le code Ada en C pour le compiler avec gcc, mais c'est un détail ;-)

Si tu as Jaguar télécharge ce fichier :
http://www.adapower.net/macos/Downloads/Compiler/gnat-gcc-3.1-1151-jaguar.dmg.gz

Si tu as 10.1 télécharge ce fichier :
http://www.adapower.net/macos/Downloads/Compiler/gnat-gcc3.dmg.gz

En cas de problèmes, la page pour les télécharger est la suivante :
http://www.adapower.net/macos/compiler.html

2) Maintenant que tu as téléchargé ce fichier, ouvre le (c'est une image disque), et installe tout ça simplement avec le joli installateur Apple.

3) Ton compilateur est installé, tu peux déjà l'utiliser, il se trouve dans /usr/local/gnat/bin normalement (j'ai testé sous Jaguar). Pour plus de commodité, il va falloir rajouter une ligne dans le fichier .cshrc. Ce fichier se trouve à la base de ton répertoire (dans "~/" donc). Pour rajouter cette ligne, je te conseille d'utiliser emacs (éditeur de texte à ligne de commande).

Marche à suivre pour éditer le fichier .cshrc (le point est important) :
a) Ouvre un nouveau Terminal.
b) tape : emacs .cshrc
c) tu es entré dans l'éditeur de texte, tapes y cette ligne : setenv PATH /usr/local/gnat/bin/:$PATH
(le copier coller ne fonctionnera pas)
d) Tape succésivement : Control+X, Control+S (à ce moment le fichier sera sauvé), Control+X, Control+C (à ce moment tu auras quitté emacs)

J'espère que c'est pas trop barbant, mais je te décris la procédure comme si tu n'avais jamais ou presque utilisé le Terminal (ce qui m'a semblé être le cas ? sinon tant pis j'ai écris qqs lignes pour rien ;-)

4) Maintenant, ton compilateur est ton fichier de config sont prêts. Tu peux compiler tous les programmes Ada que tu veux /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif


Bon comme je suis gentil, voici comment créer ton premier (je suppose ?) programme Ada, tu pourras comme ça tester pour voir si ça fonctionne.

1) Crée un fichier toto.adb (par exemple /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/tongue.gif) dans le répertoire que tu veux, et tapes y ce code :

<pre><font class="small">code:</font><hr>
with Ada.Text_IO;

procedure toto is
begin
Ada.Text_IO.Put("Super tout fonctionne !");
end toto;
</pre><hr>

Attention ! il faut éditer ce fichier avec un "vrai" éditeur de texte brut (par exemple: BBEdit, ProjectBuilder, emacs, etc. mais je ne te conseille pas tellement TextEdit, même si tu devrais y arriver en activant le mode texte)

2) Ouvre un terminal, place toi dans le répertoire de ton fichier toto.adb (grâce à cd et ls).
Tape : gnatmake toto.adb
et là miracle, ton programme est compilé si tout va bien.
pour le tester tape ensuite : ./toto

Voilà, comme je ne savais pas trop ce que tu savais et ce que tu ne savais pas, j'ai vraiment tout expliqué en détail.

En espérant n'avoir été pas trop ennuyeux, je te souhaite bien du plaisir avec ce merveilleux langage qu'est Ada. Et n'hésites pas à poser d'autres questions sur le langage lui-même une fois que tu auras commencé à l'étudier, ou bien sur l'installation du compilateur si ce n'est pas clair.

molgow
 
Eh bien, ça c'est de la réponse /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif

J'ai fait comme tu m'as dit et je pense que ça va fonctionner.

En fait je ne suis pas allé jusqu'au bout faute de temps. Je m'y remets demain.
J'avoue aussi que je dois chercher comment créer le fichier toto !
J'ai resorti mon numéro de précision Mac qui m'a permis de créer un répertoir. Sinon, je vais chercher un site qui explique les principales commandes du terminal. Ca doit exister quelque part !

Donc après tout cela je pourrai me lancer dans le petit programme test que tu m'a gentillement proposé.

Je reste néanmoins un peu déçu qu'il n'existe pas une interface graphique à tout ça. Peut être sous jaguar, mais ce n'est pas mon cas.

En tout cas, merci encore /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif

Je suis étudiant au CNAM de Paris.
Il y a un forum là bas aussi et quelques MacUsers perdus comme moi.
Tu m'autorises à indiquer ce lien ?
(Tu vas devenir une star en France /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif )

A bientôt
 
Bon je crois avoir fait tout pourtant...

Quand je tape gnatmake etc etc, j'ai la réponse suivante:
gnatmake:command not found

As tu une idée ?

Merci de ton aide

 
</font><blockquote><font class="small">Citer:</font><hr />
J'avoue aussi que je dois chercher comment créer le fichier toto !<hr /></blockquote>

Comme je te disais, tu peux très bien créer ce fichier à l'aide d'un éditeur de texte normal. La seule chose importante dont il faut faire attention, c'est d'enregistrer au format TEXTE brut (.txt), et il faut aussi que ce fichier ait l'extension .adb ou .ads (.adb pour le Body, et .ads pour les Specifications)


</font><blockquote><font class="small">Citer:</font><hr />
Je reste néanmoins un peu déçu qu'il n'existe pas une interface graphique à tout ça. Peut être sous jaguar, mais ce n'est pas mon cas.<hr /></blockquote>

Il n'existe pas à ma connaissance d'interface graphique faite pour gnat sur OS X. Il faut dire que ça ne serait pas en soi d'une grande utilité. Il suffit de taper "gnatmake monprogramme" et le tour est joué (et si tu l'as déjà tapé auparavant, tu pèses sur la flèche haut et la commande apparait). Lorsque je programmais en Ada, c'est ce que je faisais : un terminal ouvert (pour compiler + tester), et BBEdit pour éditer mon code. Mac OS X est presque aussi bien qu'un Unix pour programmer en Ada (certaines librairies graphiques sont un peu plus chiante à utiliser malgré tout, par exemple GTK-Ada qui m'a posé bien quelques problèmes l'année dernière).

Ah j'y pense, il existe tout de même XEmacs sur OS X en version graphique, avec ça tu devrais pouvoir éditer tes fichiers Ada avec des jolies couleurs et tu peux aussi lancer gnat via un menu, mais franchement, comme c'est un portage minimum (l'interface n'est pas adaptée à OS X), c'est pas génial à utiliser. Donc autant utiliser un éditeur de texte fait pour OS X.


</font><blockquote><font class="small">Citer:</font><hr />
Tu m'autorises à indiquer ce lien ?<hr /></blockquote>

C'est évident ! Si ça peut aider d'autres MacUsers perdu avec Ada sur Mac, j'en serais ravi !

Pour ma part, je suis étudiant en informatique à l'EPFL (Ecole Polytechnique), et si ça peut te donner du courage, il y a une année, j'étais aussi perdu que toi avec Ada et ce Terminal :)

Allez.. bonne programmation en Ada :)
 
<blockquote><font class="small">Post&eacute; &agrave; l'origine par ARTHEMUS:</font><hr />Quand je tape gnatmake etc etc, j'ai la réponse suivante:
gnatmake:command not found

As tu une idée ?
<hr /></blockquote>

Oh on vient de se "croiser" !

Première chose à vérifier : il faut que ton fichier .cshrc (tu n'as pas oublié le point ? et tu l'as mis au bon endroit ? dans /Users/tonlogin/.cshrc) contient un retour à la ligne après le "SETENV...." (s'il n'y a pas de retour à la ligne, la ligne n'est pas exécutée)

Si ça ne fonctionne toujours pas, vérifie que gnatmake se trouve bien dans le répertoire /usr/local/gnat/bin. Je sais que c'est bien le cas sur Jaguar, mais je n'ai pas pu vérifier sur 10.1.

Au pire, tu peux tout de même compiler sans avoir configurer ce fichier. A la place de faire "gnatmake tonprogramme", tu fais "/ton/chemin/dacces_a/gnatmake tonprogramme".


A part ça, sur cette page il semble avoir un éditeur pour faire du Ada avec le "pretty print" en couleur. Mais je n'ai pas testé : http://www.adapower.net/macos/tools.html
 
Je pense que j'ai bien tout fait avec le fichier .cshrc
Pour sa localisation, je fais la commande find avec le terminal (je m'y met petit à petit !) et je le trouve.
Quand je l'ouvre avec emacs je trouve la ligne que tu m'as fait rentrer.
Donc tout doit être bien à ce niveau.

En revanche, quand tu me précises que gnatmake doit être bien situé, j'ai fait une recherche avec le brave sherlock et il me l'a bien trouvé dans un dossier bin, lui même ds un dossier usr, mais ce dossier est dans un autre que j'ai créé sur le bureau pour réunir les fichiers que je téléchargeais pour ADA.

Donc je me demande si le dossier usr et tout ce qu'il y a dedans est bien à sa place finalement.

Pour finir, je précise que j'ai 10.1.5 et que j'ai téléchargé sur tes conseils BBEdit, qui semble très bien d'ailleurs !
Pour le fichier du programme, je le tape donc sous BBedit, puis je le sauve dans un dossier spécial. Le format de ce fichier est BBEdit text file et j'ai rentré comme nom "toto.adb" (je n'ai aucune imagination!).

Qu'en penses tu ?

Merci de ton aide
 
J'ai tout recommencé depuis le début en faisant bien attention à faire retour à la fin de la phrase setenv etc etc sous emacs.

lorsque je fais ensuite gnatmake toto.adb, j'obtiens à présent le message suivant:

[localhost:~/ada] laurent% gnatmake toto.adb
gcc -c toto.adb
gcc: installation problem, cannot exec `as': No such file or directory
gnatmake: "toto.adb" compilation error
[localhost:~/ada] laurent%

voilà voilà.

Ca ne fonctionne toujours pas mais j'ai qd même l'impression d'avancer !
Ca fait penser que c'est peut être bien le fichier usr/bin/gnatmake qui n'est pas à se place (voir mon précédent post). Si c'est ça, je le mets où ???

Merci
 
cux221 a dit:
Tu as installé les outils de developpement?

Ah oui, merci cux221, j'avais oublié une chose importante. GCC (compilateur C/C++) n'est pas installé par défaut sur OS X, et il est nécessaire au bon fonctionnement de gnat.

La solution : installer les Developer Tools, téléchargeable sur http://connect.apple.com (attention, c'est un fichier de plus de 200 Mo), ou alors les installer depuis un CD si tu en as un (certains l'ont reçu avec leur machine).

Et normalement, après cette étape, tu ne devrais plus avoir de problème pour compiler avec gnat.
 
Le mystère perdure mais évolue !

J'ai donc installé les outils de développement à partir du CD founi avec mon système 10.1.

J'ai refait la commande gnatmake toto.adb sous le terminal et la réponse d'erreur est maintenant celle-ci:
Je vous livre la totalité de la chose !!

Welcome to Darwin!
[localhost:~] laurent% cd ada
[localhost:~/ada] laurent% gnatmake toto.adb
gnatbind -x toto.ali
gnatlink toto.ali
ld: table of contents for archive: /usr/local/gnat/lib/gcc-lib/powerpc-apple-darwin5.4/3.1/adalib/libgnat.a is out of date; rerun ranlib(1) (can't load from it)
gnatlink: cannot call /usr/local/gnat/bin/gcc
gnatmake: *** link failed.
[localhost:~/ada] laurent%

Bon, moi là je suis largué /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif

Avez vous une idée ?

Merci
 
ARTHEMUS a dit:
Bon, moi là je suis largué /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif

Le problème vient du fait que gnat n'arrive pas à trouver le compilateur gcc. Et malheureusement, je ne sais pas comment résoudre ce problème /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/frown.gif
Tout ce que je peux te dire, c'est que j'ai eu exactement le même problème l'année dernière lorsque j'ai tenté d'installer gnat pour la première fois. (exactement le même message d'erreur avec ranlib). Et je ne l'ai jamais résolu, j'ai abandonné par découragement, et puis quelques temps après j'ai changé d'ordinateur et pu ainsi tout réinstaller depuis le début avec succès (c'était sur 10.1 donc).

Sur 10.2, je n'ai pas eu ce problème, mais j'avais déjà installé les Developer Tools avant d'installer gnat. (c'est peut-être ça la solution ? /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/confused.gif )
 
Ca doit être ça.
Maintenant que tu as installé le dev tools essaye de réinstaller gnat.
Amon avis lors de la première install, il n'a pas trouvé de gcc donc ne fais pointé ça sur rien.
 
En lisant plus attentivement le site adapower.net, je viens de m'apercevoir que gnat nécessitait les Developer Tools d'avril 2002 pour fonctionner (la dernière version donc) : "This snapshot requires the April 2002 Developer Tools be installed."

Et je suppose que tu as du installer les Developer Tools de Decembre 2001, si tu l'as reçu sur CD avec 10.1 !! La voilà donc peut-être l'ultime décision. Il va donc te falloir aller télécharger ce fichier de quelques centaines de Mo sur le site d'Apple :-( (j'espère que tu as une bonne connection internet)

Voilà j'espère que ça pourra enfin te faire découvrir les joies de la programmation en Ada sur OS X ! Et surtout, ne te décourage pas, je peux t'assurer que j'ai déjà réussi à faire fonctionner gnat sur 10.1.5 (après plusieurs tentatives c'est vrai...) et sur 10.2.1 (du premier coup par contre là /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif
 
cux221 a dit:
A mon avis lors de la première install, il n'a pas trouvé de gcc donc ne fais pointé ça sur rien.

L'installateur Apple ne fait que copier les fichiers au bon endroit (avant l'installateur, il suffisait de décompresser des .tar.gz au bon endroit).

Le truc c'est que gnat a besoin de gcc3 qui n'est présent que sur les DevTools depuis Avril 2002, si je ne me trompe pas. Et ça je l'avais malheureusement oublié ... /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/frown.gif
 
bien bien, ça avance tout ça /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/smile.gif

Je me lance alors à l'assaut dut éléchargement chez apple...
J'ai heureusement l'ADSL.... 1h30 de téléchargement qd même !

J'essaye ça ce soir ou demain et je vous tiens tous au courant de la suite de mes aventures /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif

Merci et à bientôt !
 
Heureux je suis !

Et bien voilà, ça devait bien arriver un jour ....

Tout fonctionne parfaitement.

Il n'y aura donc pas de pc à la maison /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/tongue.gif

J'ai donc téléchargé les outils de développement d'avril 2002 et réinstallé le gnat.
Et puis tout va bien, le méga programme (que je comprends depuis jeudi hier /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/wink.gif ) fonctionne.

Ainsi donc je te remercie chaleureusement ainsi que cux221.

Et à bientôt sur ce forum
 
ARTHEMUS a dit:
Il n'y aura donc pas de pc à la maison /ubbthreads/http://forums.macg.co/vbulletin/images/smiliesold/tongue.gif

Voilà une bonne nouvelle :)

Surtout que ça ne doit certainement pas être plus simple d'installer gnat sur Windows !