Pb de liens à la compilation

Résolu
duddy67 -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour,

J'essaie de compiler un programme mais
j'obtiens l'erreur suivante:

/usr/bin/ld: ne peut trouver -lXft

D'aprés ce que j'ai lu ld serait une sorte de linker.
Comment faire pour le configurer ?
Y a t-il des variables d'environnement à définir ?

Merci
Configuration: Linux
Firefox 2.0.0.6

6 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    essaie ça en root
    ln -s /usr/lib/libXft.so.2.1.2 /usr/lib/libXft.so
    1
  2. aruju Messages postés 2219 Date d'inscription   Statut Contributeur Dernière intervention   403
     
    salut,

    je crois qu'il te manque une librairie à savoir Xft, je ne sais pas quelle distribution t'utilise mais pour trouver à quel paquet elle appartien tu fais:

    avec mandriva:

    urpmf Xft


    avec debian:
    apt-get search Xft


    je pense qu'un:

    apt-get install libxft-dev 
    ou
    apt-get install libxft2-devel

    devrais faire l'affaire
    0
  3. duddy67
     
    Voici ce que donne apt-cache depends libxft-dev

    libxft-dev
    Dépend: libxft2
    |Dépend: libc6-dev
    Dépend: <libc-dev>
    libc6-dev
    Dépend: libfontconfig1-dev
    Dépend: libfreetype6-dev
    Dépend: libx11-dev
    Dépend: libxrender-dev
    |Dépend: zlib1g-dev
    Dépend: <libz-dev>
    zlib1g-dev
    Pré-Dépend: x11-common
    Est en conflit avec: <libxft2-dev>
    Est en conflit avec: <xlibs-dev>

    J'hésite vraiment à l'installer vu les conflits signalés.
    Pourtant le repertoire user/lib/ contient un fichier nommé libXft.so.2.1.2
    La version 2 de libXft j'imagine.

    J'ai donc modifié -lXft en -lXft2 dans mon makefile (pour tester) et là
    j'ai eu le message:

    /usr/bin/ld: ne peut trouver -lXft2

    Je ne sais pas comment faire pour régler ce pb ?
    0
  4. Manu
     
    Bonjour,

    Quelques causes qui peuvent conduire à l'erreur "/usr/bin/ld: ne peut trouver -lXft2" :

    1) la librairie n'est pas installée (je n'insiste pas)
    2) elle est mal configurée. ld ne recherche pas des noms à rallonge comme libXft.so.2.1.2, normalement il doit y avoir des liens symboliques de type libXft.so et/ou libXft.so.2 renvoyant vers le fichier effectif.
    3) les arguments de ld n'indiquent pas où se trouve le fichier. Une option -l doit être précédée d'une option -L qui donne le répertoire contenant le fichier (/user/lib n'est pas dans les répertoires par défaut, en tout cas pas chez moi).

    Manu
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. duddy67
     
    Merci pour ton aide ;-)
    Avec les liens symbolique ça marche maintenant. Je n'ai plus ces messages d'erreur et mon executable est créé.
    0
  7. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    De rien ;-)
    0