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 :

compilation avec -fPIC


Sujet :

C++

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Points : 3
    Points
    3
    Par défaut compilation avec -fPIC
    Bonjour,

    J'ai une erreur en compilant un logiciel lors du make. J'ai l'erreur suivante :

    relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC
    /usr/lib/python2.5/config/libpython2.5.a: could not read symbols: Bad value
    collect2: ld a retourné 1 code d'état d'exécution
    make[2]: *** [bindings/_yafqt.so] Erreur 1

    J'ai essayé de mettre l'option -fPIC dans le flag CXXFLAG mais ça n'a rien changé.

    Est-ce que quelqu'un a une idée.

    Merci d'avance pour votre aide.

  2. #2
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Il te faut recompiler libpython2.5.a en dynamique, pas juste faire une édition des liens avec fPIC (ça ne sert à rien).
    Il te manque sans doute un paquet libpython-dev ou un truc du genre.

  3. #3
    screetch
    Invité(e)
    Par défaut
    par défaut il doit utiliser la version statique, essaye de linker avec les options:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -Wl,-Bdynamic -lpython -Wl,-Bstatic ....
    ca permet de demander au linker d'utiliser la version dynamique de python, qui elle doit avoir -fPIC

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Points : 20 970
    Points
    20 970
    Par défaut
    Je soupçonne plus l'absence de la version dynamique. Il essaie de compiler une bibliothèque dynamique, par défaut, il devrait se lier à la version dynamique.

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    pour linker, il faut que j'ajoute ces flags dans la variable d'environnement CXXFLAGS?

  6. #6
    screetch
    Invité(e)
    Par défaut
    LDFLAGS je crois, mais pas sur. C'est plus dur a configurer je pense...

  7. #7
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Matthieu Brucher Voir le message
    Je soupçonne plus l'absence de la version dynamique. Il essaie de compiler une bibliothèque dynamique, par défaut, il devrait se lier à la version dynamique.
    Je me demande si ce n'est pas une occurence d'un autre probleme. En 32 bits il est possible de faire une bibliotheque partagee sans -fPIC avec le modele memoire par defaut. Ce n'est pas le cas en 64 bits, il faut aussi -mcmodel=large (et ce n'est pas disponible avec les vieilles versions de gcc).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

Discussions similaires

  1. Problème à l'exécution avec wxWindows (compilé avec BCC55)
    Par ShootDX dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 14/11/2003, 18h04
  2. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  3. Problemes de compilation avec g++ sous linux
    Par Selimmel dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 19/09/2003, 13h43
  4. [JB9][EJB]Compiler avec Make ou javac ?
    Par _gtm_ dans le forum JBuilder
    Réponses: 4
    Dernier message: 11/07/2003, 15h59
  5. Compilation avec un Makefile
    Par Mau dans le forum GTK+ avec C & C++
    Réponses: 3
    Dernier message: 28/02/2003, 11h30

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