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

Raspberry Pi Discussion :

Récupération des paramètres de la ligne de commande


Sujet :

Raspberry Pi

  1. #1
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Avril 2019
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Avril 2019
    Messages : 49
    Points : 70
    Points
    70
    Par défaut 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
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Avril 2019
    Messages
    49
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Avril 2019
    Messages : 49
    Points : 70
    Points
    70
    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é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, 16h11
  2. paramètres de la ligne de commande disparaissent...
    Par Antoine_1977 dans le forum Langage
    Réponses: 9
    Dernier message: 04/10/2005, 12h20
  3. Récupération des paramètres d'une requête
    Par TomPad dans le forum Access
    Réponses: 10
    Dernier message: 16/06/2005, 15h11
  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, 11h40
  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, 22h00

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