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

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : avril 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Problème de récupération des paramètres de la ligne de commande
    Bonjour.
    Je programme en assembleur 32 bits et 64 bits (oui je sais, nul n'est parfait !!) sur un raspberry pi3B+.
    La récupération des paramètres de la ligne de commande stockés sur la pile s'effectue très bien en compilant avec as et en linkant avec ld.
    Or pour des cas particuliers, je dois utiliser des fonctions du langage C et pour un bon fonctionnement j'effectue le link avec gcc à la place de ld.
    Et dans ce cas, la récupération des paramètres sur la pile n'est pas bonne. J'ai essayé de voir s'il y avait un décalage dans les données stockées sur la pile mais je ne trouve rien.
    Quelqu'un saurait-il me dire où se trouvent les adresses des paramètres dans ce cas ?
    Merci de votre aide.

  2. #2
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : avril 2019
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Problème résolu
    Désolé pour mon message d'hier mais il s'agissait d'une erreur de ma part dans le script de compilation.
    En effet après avoir recherché le même type d'erreur sur les blogs et forums, il n' y avait aucun signalement de ce type d'anomalie, ce qui impliquait qu'il s'agissait d'une erreur personnelle.
    Après avoir tout revérifié, il s'avère que j'avais omis dans la ligne du link gcc l'option -e main pour indiquer que mon point d'entrée était main.
    En effet, lors du link d'un programme par gcc, celui ci insère des instructions supplémentaires et considère que le point d'entrée est _start.
    Et dans ces instructions supplémentaires exécutées en début de programme, il y a une modification de l'adresse de la pile.
    Ce qui explique que mon programme ne retrouvait pas les adresses des paramètres de la ligne des commandes.
    Mais ces recherches n'ont pas étaient inutiles car sur un forum, j'ai trouvé des explications pour éviter l'appel à gcc en mettant simplement les librairies adhoc dans l'appel à ld.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 18/02/2015, 19h34
  2. Récupérer des paramètres de la ligne de commande
    Par Runs59 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 21/04/2008, 17h11
  3. Réponses: 8
    Dernier message: 12/05/2005, 09h16
  4. Récupération des paramètres en sortie d'1 procédure stockée
    Par navis84 dans le forum Bases de données
    Réponses: 1
    Dernier message: 23/12/2004, 12h40
  5. Récupération des paramètres avec une procedure stockée
    Par samlerouge dans le forum Bases de données
    Réponses: 2
    Dernier message: 31/03/2004, 23h00

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