[Linux] Programmation en Ada 2006 ? [Résolu/Fermé]

Signaler
Messages postés
4583
Date d'inscription
jeudi 23 octobre 2003
Statut
Contributeur
Dernière intervention
14 janvier 2021
-
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
-
Bonjour,

Je viens d'isntaller la dernière version du langage de programmation Ada : version 2006:

1) Téléchargement
- https://www.adacore.com/community
- https://www.adacore.com/community

2) Installation :
/usr/local/Ada_2006

bin/  lib/  libexec/  share/

 /bin 
addr2line*  gcov*       gnatchop*     gnatlink*    gnatpp*    gps_exe*
cbrowser*   gdb*        gnatclean*    gnatls*      gnatprep*
cpp*        gnat*       gnatelim*     gnatmake*    gnatstub*
dbimp*      gnatbind*   gnatfind*     gnatmem*     gnatxref*
gcc*        gnatbl*     gnathtml.pl*  gnatmetric*  gprmake*
gccbug*     gnatcheck*  gnatkr*       gnatname*    gps*

/lib
gcc/  libffi-2.00-beta.so*  libffi.la*  libgcc_s.so*   python2.3/
gps/  libffi.a                  libffi.so*  libgcc_s.so.1

libexec
gcc/
i686-pc-linux-gnu/
3.4.6/
as*  cc1*  collect2*  gnat1*  install-tools/  ld*

dans install-tools/  :       fixincl*    fixinc.sh*   mkheaders*

share/
doc/  examples/  gps/  themes/


3) Codage
-- ********************************************************
-- Nom Prog : ADA01_01.adb
-- Type : Application
-- Sujet : Modele de procedure
--
-- Auteur :
-- Version : 1.3
-- Creation : 17/09/2004
-- Dern. Modif : 04/10/2006
--
-- Compilateur : GNAT 3.12p - GNAT 2006
-- Remarques : Environnement Linux Debian 3.1 release 2
-- ********************************************************

-- Paquetage(s) utilise(s)
with Ada.Text_Io;
use Ada.Text_Io;
procedure Ada01_01 is
-- partie declarative
-- Variables, Procedure, Fonctions, ...
begin
-- Debut du corps de la procedure
-- Message de debut d'execution
Put_Line ("Debut - Execution ADA01_01");
New_Line;
Put_Line ("Modele de procedure GNAT 3.12p");
Put_Line (" Windows 9x / Me / NT / XP / Vista - Linux RedHat / Debian / Ubuntu / Mandriva / ...");
Put_Line ("------------------------------------------------------------------------------------");
New_Line;
-- Procedure proprement dite
-- Message de fin d'execution
New_Line;
Put_Line ("Fin - Execution ADA01_01");
end Ada01_01;


4) Compilation du code source
gnat
GNAT GPL 2006 (20060522-34)
Copyright 1996-2006, Free Software Foundation, Inc.

List of available commands

gnat bind               gnatbind
gnat chop               gnatchop
gnat clean              gnatclean
gnat compile            gnatmake -f -u -c
gnat check              gnatcheck
gnat elim               gnatelim
gnat find               gnatfind
gnat krunch             gnatkr
gnat link               gnatlink
gnat list               gnatls
gnat make               gnatmake
gnat metric             gnatmetric
gnat name               gnatname
gnat preprocess         gnatprep
gnat pretty             gnatpp
gnat setup
gnat stub               gnatstub
gnat xref               gnatxref

Commands find, list, metric, pretty, stub and xref accept project file switches -vPx, -Pprj and -Xnam=val

gnatmake Ada01_01.adb
fatal error, run-time library not installed correctly
cannot locate file system.ads
gnatmake: *** make failed.


D'avance merci.

6 réponses

Messages postés
4583
Date d'inscription
jeudi 23 octobre 2003
Statut
Contributeur
Dernière intervention
14 janvier 2021
471
Bonjour,

Je n'ai pas réussi à compiler la source, pourtant j'ai suivi les étapes d'installation classique sous Linux ?
Messages postés
4583
Date d'inscription
jeudi 23 octobre 2003
Statut
Contributeur
Dernière intervention
14 janvier 2021
471
Bonjour,

Y-a-t-il quelqu'un qui connait la manip ?
D'avance merci
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
947
Sous ma Debian Etch
johand@horus:~/src/ada$ gnat
GNAT 4.0.4 20060507 (prerelease) (Debian 4.0.3-3)
Copyright 1996-2005 Free Software Foundation, Inc.
<cut/>
johand@horus:~/src/ada$ gnat make ADA01_01
gcc-4.0 -c ADA01_01.adb
ADA01_01.adb:18:11: warning: file name does not match unit name, should be "ada01_01.adb"
gnatbind -x ADA01_01.ali
gnatlink ADA01_01.ali
johand@horus:~/src/ada$ rm ADA01_01 ADA01_01.ali ADA01_01.o
johand@horus:~/src/ada$ gnatmake ADA01_01
gcc-4.0 -c ADA01_01.adb
ADA01_01.adb:18:11: warning: file name does not match unit name, should be "ada01_01.adb"
gnatbind -x ADA01_01.ali
gnatlink ADA01_01.ali

johand@horus:~/src/ada$ ./ADA01_01
Debut - Execution ADA01_01

Modele de procedure GNAT 3.12p
 Windows 9x / Me / NT / XP / Vista - Linux RedHat / Debian / Ubuntu / Mandriva / ...
------------------------------------------------------------------------------------


Fin - Execution ADA01_01

L'invocation de gnat semble incorrecte.
gnatmake executable
gnat make executable
avec comme source executable.adb

Il faut lire la documentation de manière plus aprofondie...

Johan
Messages postés
4583
Date d'inscription
jeudi 23 octobre 2003
Statut
Contributeur
Dernière intervention
14 janvier 2021
471
Merci pour ton aide.

Je vais réinstaller Ada 2006 dans /urs/local/Ada_2006
Ajouter dans la variable d'environnement /home/.bachrc

# Environnement Ada 2006
export ADA_HOME=/usr/local/Ada_2006
export PATH=$PATH:$ADA_HOME/bin
Messages postés
4583
Date d'inscription
jeudi 23 octobre 2003
Statut
Contributeur
Dernière intervention
14 janvier 2021
471
Bonjour,

/home/**/Desktop/Ada
Mode console:
gnat make Ada01_01.adb
gcc -c Ada01_01.adb
Ada01_01.adb:18:11: warning: file name does not match unit name, should be "ada01_01.adb"
gnatbind -x Ada01_01.ali
gnatlink Ada01_01.ali



Résultat: Réussi
Ada01_01* Ada01_01.adb Ada01_01.ali Ada01_01.o
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
947
Ah, voilà.
Renomme ton unit/fichier (avec cohésion), et tu n'auras plus de warning ;)
Ceci-dit, je te vois poster souvent, être très curieux sur un tas de sujets,
Ada n'étant pas très récurent sur CCM..., il suffit d'avoir une bonne habitude de Unix(Gnu en particulier) pour résoudre ce genre de problème.

Sans rentrer dans le mode troll, je suis sous Debian (etch). Que du bonheur...
Quelle est ta distribution?
A bientôt.

Johan
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 544
Salut,

Quelle est ta distribution?

Ce n'est pas un secret ;)
profil Arno59

lami20j