IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ada Discussion :

Configuration de ld pour GNAT


Sujet :

Ada

  1. #1
    Inactif Avatar de Hibou57
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    852
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 852
    Points : 493
    Points
    493
    Par défaut Configuration de ld pour GNAT
    Bonjour,

    Comment indiquer au lieur ld, utilisé par GNAT, l'endroit où il doit trouver les fichiers objets et librairie à lier ?

    J'ai dut réinstaller GNAT 3.15p sans passer par l'installateur, mais simplement en copiant les fichiers dans un répertoire (pour des raisons non utiles à exposer)

    J'ai mis à jour la variable d'environnement PATH pour qu'elle inclus le chemin des binaires de GNAT ainsi que le chemin vers gnat1.

    Quand je compile avec gnatmake, j'obtien systématiquement l'erreur "ld: cannot open crt2.o".

    J'ai donc entrepris d'ajouter la variable d'environnement LDPATH en lui donnant comme valeur le chemin du repertoire contenant les *.o et autres *.a (j'ai bien entendu vérifié qu ecrt2.o s'y trouve effectivement).

    Mais rien n'y fait, et j'obtiens toujours le même message d'erreur.

    J'ai essayé de même avec les variables d'environnement LD_PATH, LD_LIB_PATH, LD_LIBRARY_PATH et LD. Rien n'y fait, ld semble incapable de lire ces variables d'environnement, alors que j'ai bien testé leurs présences.

    Les options -gnatl et -L passé à gnatmake n'y change rien.

    Dans le fichier specs, j'ai ajouté -L cheminxxxx et --library-path cheminxxxx sous *link: mais là encore, aucun résultat.

    Je suis à cours d'imagination aprés avoir absoluement tout essayé de ce qui était imaginable.

    Ma question : comment faire comprendre à ld qu'il peut trouver crt2.o dans le repertoire que je veux lui indiquer ?

    merci pour toutes infos à ce sujet
    ------------------------------------------------------------
    Sur le web, c'est la liberté qui est gratuite, mais bien évidement pas la consomation ... et encore moins la consomation à outrance
    ------------------------------------------------------------
    Language shapes the way we think, and determines what we can think about [ B. Lee Whorf ] ... mais ce n'est pas tout à fait vrai à 100%...
    ------------------------------------------------------------
    Pascal (FreePascal?) - Ada (Gnat-3.15p)
    XSLT (XSLTProc) - CGI binaires (Ada/C) [ Clavier Arabe ]
    ------------------------------------------------------------

  2. #2
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    Il est possible que l'installeur ait mis des valeurs dans le registre. Donc à moins que tu puisses les "reproduire" aussi, je pense qu'il faudrait mieux utiliser simplement ... l'installeur !

  3. #3
    Inactif Avatar de Hibou57
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    852
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 852
    Points : 493
    Points
    493
    Par défaut
    Bonjour Giovanny,

    J'ai bien pensé à cela, et j'ai donc entrepris d'installer avec l'installateur, de consulter les variables définies dans le base de registre à fin de les reproduire, puis désinstaller pour reprendre mon installation "standalone".

    Sans succés, car les variables définies dans la base de registre ne font pas référence aux chemins des librairies. Je n'ai trouvé comme seule potentiellement pertinante, qu'une variable définissant un chemin pour MingW.

    Je crois que l'installation de GNAT contient de nombreux paramètres codés en dure.

    D'ailleurs justement, dans l'ensemble l'installation de GNAT fait un peu brouillon : aucun support multiutilisateur, écrase sans aucun complexe toutes associations de fichiers précédement définies, entre en conflit avec toutes autres installation d'application tel que MingW, GCC, etc. Et surtout, impossible de l'installer pour un utilisateur unique, car on ne peut l'installer qu'en mode administrateur (je parle de WindowsXP), et l'installation prend effet pour tous les comptes, même ceux n'ayant rien à voir avec GNAT (compte invité-e par exemple).

    Finalement j'ai résolu partiellement ainsi :

    J'ai réinstallé GNAT avec l'installateur, puis suppression de toutes les associations de fichiers définies par GNAT pour restaurer les précédentes (fichier objet, par exemple ..... un comble, ça n'est quand-même pas un type de fichier spécifique à GNAT), suppression de l'ajout à la variable PATH, pour la reporter dans la variable PATH de compte qui est seul concerné par GNAT. Au passage, je me suis aperçu que la désinstallation de GNAT laisse la variable PATH avec un relica.

    Je ne rentre pas dans tous les détails, mais enfin, voilà ....

    Je ne marque néanmoins pas résolu, parce que c'est vraiment un pis-aller.

    Bonne soirée tous/toutes
    ------------------------------------------------------------
    Sur le web, c'est la liberté qui est gratuite, mais bien évidement pas la consomation ... et encore moins la consomation à outrance
    ------------------------------------------------------------
    Language shapes the way we think, and determines what we can think about [ B. Lee Whorf ] ... mais ce n'est pas tout à fait vrai à 100%...
    ------------------------------------------------------------
    Pascal (FreePascal?) - Ada (Gnat-3.15p)
    XSLT (XSLTProc) - CGI binaires (Ada/C) [ Clavier Arabe ]
    ------------------------------------------------------------

  4. #4
    Rédacteur
    Avatar de Giovanny Temgoua
    Profil pro
    Étudiant
    Inscrit en
    Novembre 2003
    Messages
    3 830
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2003
    Messages : 3 830
    Points : 4 006
    Points
    4 006
    Par défaut
    D'ailleurs justement, dans l'ensemble l'installation de GNAT fait un peu brouillon : aucun support multiutilisateur, écrase sans aucun complexe toutes associations de fichiers précédement définies, entre en conflit avec toutes autres installation d'application tel que MingW, GCC, etc. Et surtout, impossible de l'installer pour un utilisateur unique, car on ne peut l'installer qu'en mode administrateur (je parle de WindowsXP), et l'installation prend effet pour tous les comptes, même ceux n'ayant rien à voir avec GNAT (compte invité-e par exemple).
    Oui, cà c'est parce que c'est dans le registre, à l'emplacement HKEY_LOCAL_MACHINE si je me souviens bien

    Je ne marque néanmoins pas résolu, parce que c'est vraiment un pis-aller.
    C'est nécessaire pourtant, puisque la question initiale a été résolue

  5. #5
    Inactif Avatar de Hibou57
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    852
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 852
    Points : 493
    Points
    493
    Par défaut
    ..... au passage, je viens de commencer à essayer gvd, auquel je n'avais jamais put touché avant (j'étais sous Win98 il y a encore peu, et gvd plantait dès le démarrage).

    A cette occasion je me suis aperçu que gvd ne peut pas ouvir les fichiers dont le chemin comporte des espaces (autant pour les *.exe que les sources), et donc en conscéquence les projet GNAT ne peuvent pas êtres placés dans un repertoire sous "C:\Documents and Settings\%UserName%".

    GNAT a plutôt l'air fait pour être installé sur une machine dédiée au developpement et qui n'aurait pas trop d'autres usages... mais bon, ça n'enlève rien à ce qu'il vaut, d'autant qu'il n'y a pas vraiment d'autres compilateurs accessibles, et le gvd est vraiment génial

    C'est nécessaire pourtant, puisque la question initiale a été résolue
    Non, la question intiale ne l'est pas.
    ------------------------------------------------------------
    Sur le web, c'est la liberté qui est gratuite, mais bien évidement pas la consomation ... et encore moins la consomation à outrance
    ------------------------------------------------------------
    Language shapes the way we think, and determines what we can think about [ B. Lee Whorf ] ... mais ce n'est pas tout à fait vrai à 100%...
    ------------------------------------------------------------
    Pascal (FreePascal?) - Ada (Gnat-3.15p)
    XSLT (XSLTProc) - CGI binaires (Ada/C) [ Clavier Arabe ]
    ------------------------------------------------------------

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Configuration imprimante matricielle pour Crystal Reports
    Par sakinaMejd dans le forum Périphériques
    Réponses: 2
    Dernier message: 30/09/2009, 15h44
  2. Réponses: 2
    Dernier message: 03/11/2005, 08h45
  3. [Sécurité] configuration de IIS pour php4
    Par sahmi9 dans le forum Langage
    Réponses: 1
    Dernier message: 24/10/2005, 16h59
  4. Configuration des droits pour samba avec ftp et www
    Par Alkmie dans le forum Réseau
    Réponses: 2
    Dernier message: 07/11/2004, 13h50
  5. Configuration de UltraEdit pour java
    Par lantfeust dans le forum Environnement de Développement Intégré (EDI)
    Réponses: 1
    Dernier message: 19/12/2003, 16h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo