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

Bibliothèques Discussion :

[Lame] Erreur de compilation


Sujet :

Bibliothèques

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut [Lame] Erreur de compilation
    Bonjour,

    Je travaille avec les sources de Lame (encodeur-décodeur multimédia) qui sont open source.

    J'ai cependant un problème lorsque je souhaite les intégrer à mon projet.
    J'utilise la bibliotheque libmp3lame (chez moi ../libs/lame-3.97/libmp3lame/) que je compile avec -L../libs/lame-3.97/libmp3lame/.libs/ -lmp3lame, ca marche nickel.
    J'ai besoin aussi des fichiers frontend (../libs/lame-3.97/frontend/), et c'est la que ca ne marche pas. (Le repertoire frontend/.libs/ est vide...)

    A la ligne de compilation suivante (j'utilise un Makefile mais je vous mets ce qui plante)
    arm-linux-g++ -Wall -fsigned-char cgi_maj.o generation_form.o init.o mise_a_jour.o ../libs/obj_files/clientsocket.o ../libs/obj_files/socket.o
    ../libs/lame-3.97/frontend/get_audio.o ../libs/lame-3.97/frontend/portableio.o ../libs/lame-3.97/frontend/brhist.o ../libs/lame-3.97/frontend/lametime.o ../libs/lame-3.97/frontend/timestatus.o ../libs/lame-3.97/frontend/parse.o
    ../libs/tinyxml/tinystr.o ../libs/tinyxml/tinyxml.o ../libs/tinyxml/tinyxmlerror.o ../libs/tinyxml/tinyxmlparser.o
    -L../libs/cgicc-3.2.3/cgicc/.libs/ -lcgicc -L../libs/lame-3.97/libmp3lame/.libs/ -lmp3lame
    -o cgi-bin/cgi_generation_arm.cgi
    J'obtiens l'erreur suivante :
    mise_a_jour.o(.text+0x30d0): In function `MiseAJour::encodeWavToMp3(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `init_infile(lame_global_struct*, char*)'
    mise_a_jour.o(.text+0x3100): In function `MiseAJour::encodeWavToMp3(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `init_outfile(char*, int)'
    mise_a_jour.o(.text+0x3188): In function `MiseAJour::encodeWavToMp3(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
    : undefined reference to `get_audio(lame_global_struct*, int (*) [1152])'
    collect2: ld returned 1 exit status
    make: *** [bin] Erreur 1
    Je sais que ca provient d'une erreur de lien avec la bibliotheque, mais je ne sais pas laquelle j'ai besoin, je ne connais pas son nom...

  2. #2
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 69
    Par défaut
    Salut,

    D'apres ce que j'ai vu sur le net, ces fonctions seraient presentes dans lame_enc.dll mais j'garantis rien car la plupart des sources que j ai vues etaient en delphi

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Oups j'ai oublié une petite précision

    Les fonctions init_infile, init_outfile et get_audio sont définies dans ../libs/lame-3.97/frontend/get_audio.h, voila pourquoi je disais que le probleme venait d'un lien avec le repertoire frontend/

  4. #4
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 69
    Par défaut
    LOL non c'est moi j'ai mal lu les messages d'erreurs , on va dire que j suis en manque de café ^-^.

    Pourquoi tu ne fais pas un include du .h dans ton .cpp tout simplement ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Mai 2005
    Messages : 192
    Par défaut
    Dans mon mise_a_jour.h, j'ai inclus ca concernant lame :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #include "../libs/lame-3.97/include/lame.h"
    #include "../libs/lame-3.97/frontend/get_audio.h"

  6. #6
    Membre averti
    Inscrit en
    Mai 2006
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 69
    Par défaut
    Ok j'me disais aussi, ca m'etonnerais que tu l'aies pas fait . Ca ne pourrait pas venir d'un probleme au niveau des arguments ? Pq j'me trompe peut etre mais pour moi tes fonctions sont bien linkees la. Apres c'est lundi matin un jour feríe, j garantis rien.

    http://www.leidinger.net/lame/doxy/h..._audio_8h.html

Discussions similaires

  1. Erreur de compilation après modification du Uses
    Par DevelOpeR13 dans le forum Langage
    Réponses: 5
    Dernier message: 30/10/2007, 14h23
  2. Réponses: 2
    Dernier message: 23/09/2003, 14h32
  3. Réponses: 10
    Dernier message: 22/09/2003, 21h58
  4. Réponses: 4
    Dernier message: 27/08/2003, 21h34
  5. Réponses: 2
    Dernier message: 04/03/2003, 23h24

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