Partage
  • Partager sur Facebook
  • Partager sur Twitter

FSOUND_Init

undefined reference

    8 mars 2008 à 14:27:25

    Bonjour/rebonjour,

    Nouveau problème: la fonction FSOUND_Init ( et toute celles qui suivent) me renvoi le message d'erreur suivant :

    lecteur.o(.text+0xd4):lecteur.cpp: undefined reference to `FSOUND_Init@12


    Le bout de code concerné :

    1. void MainWindow::open()
    2.  {
    3.  QString fichier = QFileDialog::getOpenFileName(this, "Ouvrir un fichier", QString(), "Musiques (*.mp3 *.ogg *.wav *.acc)");
    4.                  if(fichier!="")
    5.                          {
    6.                          QMessageBox::information(this, "Fichier", "Vous avez sélectionné :\n" + fichier);
    7.                                 const char *morceau = fichier.toStdString().c_str();
    8.                                 FSOUND_STREAM *musique = NULL;
    9.                                 FSOUND_Init(44100, 32, 0);
    10.                                 musique = FSOUND_Stream_Open(morceau, 0, 0, 0);
    11.                            if (musique == NULL)
    12.                                    {
    13.                                         QMessageBox::critical(this, "Fichier", "Impossible de lire :\n" + fichier);
    14.                                         exit(EXIT_FAILURE);
    15.                                         }
    16.                                 FSOUND_Stream_Play(FSOUND_FREE, musique);
    17.                          }
    18.                 else
    19.                         {
    20.                         QMessageBox::warning(this, "Fichier", "Vous n'avez sélectionné aucun fichier");
    21.                         }
    22.  }


    La doc' ne parle pas de ce type d'erreur
    Google renvoi sur CSfrance, jai bien rajouté l'option dans le linker, le fichier libfmod.a est dans tout les répertoires possibles et imaginables.

    Question : où qu'il est le problème ? :'(
    • Partager sur Facebook
    • Partager sur Twitter
      19 mars 2008 à 12:17:07

      Attention : Je ne sais pas sous quel IDE / OS tu travailles, mais généralement, quand un fichier se présente sous la forme "libfmod.a", on ne spécifie pas lib ni l'extension.
      Autrement dit :
      Makefile : -lfmod (linkera automagiquement avec libfmod.a)
      Code::Blocks : dans les librairies additionnelles, idem : tu mets juste fmod, et non pas le nom du fichier.

      Ailleurs, même principe.
      Sinon, fait aussi attention que cette lib soit dans le path de recherche des libs.
      • Partager sur Facebook
      • Partager sur Twitter
        19 mars 2008 à 13:14:32

        Salut.
        Ben moi j'ai eu le même problème avec SDL_Init, et c'était du a l'utilisation de la fonction "main()", : j'ai remis celle ci : "int main(int argc, char **argv)" et maintenant ca marche =)
        Donc voila si ca peut t'aider.

        Par contre moi j'arrive pas a lire récupérer un nombre dans un fichier avec fscanf, tu sais si on peux l'utiliser en c++ ? ou alors je sais pas je dois faire une erreur...
        • Partager sur Facebook
        • Partager sur Twitter
          19 mars 2008 à 15:18:09

          Oui on peut l'utiliser en C++, cependant, il est très fortement conseillé de se servir des fstreams...

          C'est un peu comme passer de printf("blabla") à std::cout << "blabla";
          Ca vous change pas la vie, mais ça vous la simplifie :)
          • Partager sur Facebook
          • Partager sur Twitter

          FSOUND_Init

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown