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

C Discussion :

Error while loading shared libraries


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2012
    Messages : 7
    Par défaut Error while loading shared libraries
    Bonjour à toutes et à tous,

    Voila, j'ai un programme qui compile bien, mais dès que j’exécute ce programme, j'ai cette erreur :

    ./agent: error while loading shared libraries: Unexpected reloc type 0x7c
    Pour compiler ce programme, voila ma ligne de commande :

    gcc [tout les .o] -L. -libperso -o agent -lcrytpo -lssl -luuid
    la libperso.so est dans le dossier courant avec les sources. Je pense que le soucis vient du fait que le "-L." relink aussi les -lcrypto, -lssl et -luuid, mais je ne vois pas comment le régler.

    Pouvez-vous m'aider ?
    Merci d'avance,
    Tankyx.

  2. #2
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    En faite ton problème n'a rien a voir avec le C
    Le probleme est ta libperso a mon avis, sur linux il ne regarde pas les librairie sur le répertoire courant (comparé a windows).
    Alors soit tu utilise ldconfig soit tu utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$/home/ou_se_trouve_mon_dossier_agent
    ./agent

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2012
    Messages : 7
    Par défaut
    L'export n'a aucun effet, malheureusement j'avais déjà testé.

    Sinon, le ldconfig fait quoi en clair ?

    EDIT : Je suis sous un Mint 15

  4. #4
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Google est ton ami
    Mais en gros ça permet si tu mets une librairie manuellement de pouvoir la lire mais c'est pas super 'propre' vu qu'il faudra copier/coller ta lib en sudo dans /lib ou /usr/lib.

    Voici un lien avec quelques exemples d'utilisation (normalement /sbin/ldconfig -v suffit).
    http://manpages.ubuntu.com/manpages/...dconfig.8.html

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2012
    Messages : 7
    Par défaut
    Donc si j'ai bien compris, je copie-colle en sudo ma libperso.so dans /usr/lib/, pour je fais un /sbin/ldconfig -v afin de reconstruire le cache ?

    Mais si je fais ainsi, le -L. -lperso devra alors être changer en -lperso tout simplement ?

    EDIT : Quand je copie-colle la libperso.so dans /usr/lib/, et qu'ensuite je fais le /sbin/ldconfig -v, j'ai l'erreur suivante :

    /usr/lib/libperso.so is not an ELF file - it has the wrong magic bytes at the start.

  6. #6
    Membre chevronné
    Inscrit en
    Juillet 2012
    Messages
    231
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 231
    Par défaut
    Salut,

    Et comment est-ce que tu produis libperso ?

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 24/05/2011, 11h46
  2. error while loading shared libraries: libc.so.6
    Par vacknov dans le forum Mandriva / Mageia
    Réponses: 11
    Dernier message: 22/11/2007, 21h00
  3. Réponses: 9
    Dernier message: 08/03/2007, 14h26
  4. [installation 9i] error while loading shared library
    Par ChristopheH dans le forum Installation
    Réponses: 3
    Dernier message: 19/07/2006, 17h36
  5. Réponses: 2
    Dernier message: 05/02/2004, 13h58

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