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

Linux Discussion :

Problème de link


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Novembre 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 1
    Par défaut Problème de link
    Bonjour,

    Je travaille actuellement sur un projet consistant à réaliser le portage d'une librarie graphique (MiniGUI) sur le système d'exploitation embarqué eCos

    Voici déjà leur site respectifs :
    www.ecos.sourceware.org
    www.minigui.com

    J'ai donc réalisé tout le processus de configuration et de compilation de eCos, et de miniGUI.

    Je souhaite maintenant réaliser un programme (helloworld) graphique.

    J'ai réalisé plusieurs tests :
    - helloworld graphique sous linux (avec minigui)
    - helloworld (mode texte) sur ecos.

    Mon problème n'est pas lié à l'exotisme de mon système d'exploitation, mais plutôt à un problème de compilation (et surtout link) de mon progrmame helloworld pour eCos qui fait intervenir miniGUI.

    Voici la commande utilisée pour la compilation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    i386-elf-gcc -g -Wall -D_ECOS -I ../ecos-pc/install/include -I /usr/local/include/ -c helloworld.c -L /opt/ecos/ecos-2.0/work/ecos-pc/install/lib -Ttarget.ld -nostdlib
    et la commande utilisée pour le link :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ld -o a.out  /usr/local/lib/libminigui.so    helloworld.o -lminigui -lc
    Le problème est simple, puisque lors du link, j'ai une série d'erreurs : "undefined reference" pour chaque appel de fonction de miniGUI, fonctions définies dans les headers et dans le fichier libminigui.so.

    En effet, lorsque je recherche les noms de fonctions non définies avec un petit grep, je constate qu'il y a bien concordance. La preuve en image.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ld: AVERTISSEMENT: ne peut trouver le symbole d'entrée _start; utilise par défaut 0000000008048784
    /usr/local/lib/libminigui.so: référence indéfinie vers « png_set_gray_1_2_4_to_8 »
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    debian:/opt/ecos/ecos-2.0/work/app/minigui# grep -r png_set_gray_1_2_4_to_8 /usr/local
    Fichier binaire /usr/local/lib/libminigui-1.6.so.2.0.0 concorde
    Fichier binaire /usr/local/lib/libminigui-1.6.so.2 concorde
    Fichier binaire /usr/local/lib/libminigui.so concorde
    Fichier binaire /usr/local/lib/libminigui.a concorde
    Quelqu'un a t'il qq hypothèses sur la question ?
    Est ce que le warning lors du link a une réelle importance ?
    Est-ce qu'une solution au problème pourrait être de linker en statique ?

    Si je suis pas clair, et pour plus d'infos, n'hésitez pas à me poser vos questions. Merci

  2. #2
    Membre émérite Avatar de valefor
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    711
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 711
    Par défaut
    C'est bizarre que sur ta ligne de compilation tu passes des paramètres spécifiques au link, mais bon, je ne pense pas que cela soit la cause de ton problème.

    As-tu essayé de compiler les exemples livrés avec ecos ? Il y a un hello world.

    Si oui, je te conseille de reprendre la ligne de commande de compilation. Puis de rajouter ta librairie /usr/local/lib/libminigui.a sur la ligne de compilation.

Discussions similaires

  1. [DLL/classe template] problème de link
    Par Bob.Killer dans le forum C++
    Réponses: 7
    Dernier message: 31/08/2005, 18h56
  2. Problème de link...
    Par Royd938 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 30/09/2004, 17h33
  3. C/asm : problème pour link
    Par SteelBox dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 06/04/2004, 23h03
  4. Problème de LINK Bizarre !!
    Par Jasmine dans le forum MFC
    Réponses: 24
    Dernier message: 19/03/2004, 15h58
  5. Problème de link avec Borland C++ 5.5
    Par gelam dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 24/11/2003, 16h45

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