Votre question

Problème en C avec FMOD : undefined reference to "FMOD_SYSTEM_CREATE@4"

Tags :
  • Undefined
  • Programme
  • Tutoriel
  • Programmation
Dernière réponse : dans Programmation
6 Avril 2012 11:47:46

Bonjour à tous !

Comme le titre du sujet l'indique j'ai un petit problème avec FMOD dans mon programme.
Je suis actuellement en train de créer un jeu en 2d avec le SDL et FMOD et je cherche donc à intégrer du son.
J'ai suivi le tutoriel du site du zéro pour tester l'intégration du son, tout marchait bien, j'ai alors transposé le code sur mon jeu en faisant les modifications nécessaires.
Un problème qui se pose et qui n'était pas là avant est l'apparition d'erreurs comme celles données dans le titre :
obj\Debug\main.o||In function `SDL_main':|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|17|undefined reference to `_FMOD_System_Create@4'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|18|undefined reference to `_FMOD_System_Init@16'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|21|undefined reference to `_FMOD_System_CreateSound@20'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|31|undefined reference to `_FMOD_Sound_SetLoopCount@8'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|34|undefined reference to `_FMOD_System_PlaySound@20'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|70|undefined reference to `_FMOD_Sound_Release@4'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|71|undefined reference to `_FMOD_System_Close@4'|
W:\mesdocuments\Projets informatiques\Battle GEII\main.c|72|undefined reference to `_FMOD_System_Release@4'|
||=== Build finished: 8 errors, 0 warnings ===|

J'ai pensé à un problème d'intégration des bibliothèques, j'ai cependant copié toutes les bibliothèques que j'avais utilisé dans le programme test et je ne comprends donc pas d'où vient le problème, voici mon code :

  1. #include "SDL.h"
  2. #include "menu.h"
  3. #include "fmod.h"
  4.  
  5. int main ( int argc, char** argv )
  6. {
  7. unsigned short choix;
  8. char st[500];
  9. int continuer = 1;
  10.  
  11.  
  12. FMOD_SYSTEM *system;
  13. FMOD_SOUND *musique;
  14. FMOD_RESULT resultat;
  15.  
  16.  
  17. FMOD_System_Create(&system);
  18. FMOD_System_Init(system, 1, FMOD_INIT_NORMAL, NULL);
  19.  
  20. /* On ouvre la musique */
  21. resultat = FMOD_System_CreateSound(system, "IntroMusic_NoEdit_Full.ogg", FMOD_SOFTWARE | FMOD_2D | FMOD_CREATESTREAM, 0, &musique);
  22.  
  23. /* On vérifie si elle a bien été ouverte (IMPORTANT) */
  24. if (resultat != FMOD_OK)
  25. {
  26. fprintf(stderr, "Impossible de lire le fichier mp3\n");
  27. exit(EXIT_FAILURE);
  28. }
  29.  
  30. /* On active la répétition de la musique à l'infini */
  31. FMOD_Sound_SetLoopCount(musique, -1);
  32.  
  33. /* On joue la musique */
  34. FMOD_System_PlaySound(system, FMOD_CHANNEL_FREE, musique, 0, NULL);
  35.  
  36. //Création du menu
  37. SDL_Surface *ecran = NULL;
  38. SDL_Event event;
  39.  
  40. SDL_Init(SDL_INIT_VIDEO);
  41.  
  42. ecran = SDL_SetVideoMode(640, 480, 32, SDL_HWSURFACE | SDL_DOUBLEBUF);
  43. SDL_WM_SetCaption("Battle Geii", NULL);
  44.  
  45. while(continuer==1)
  46. {
  47. //On lance le menu
  48. choix=menu(ecran,event);
  49.  
  50. if (choix==1)
  51. {
  52. play(ecran,event);
  53. }
  54.  
  55. if (choix==2)
  56. {
  57. FILE *stat=NULL;
  58. stat = fopen("stat.txt","r");
  59. fgets(st, 500, stat);
  60. printf("%s",st);
  61. fclose(stat);
  62. }
  63.  
  64. if (choix==0)
  65. {
  66. continuer=0;
  67. }
  68. }
  69.  
  70. FMOD_Sound_Release(musique);
  71. FMOD_System_Close(system);
  72. FMOD_System_Release(system);
  73.  
  74. SDL_Quit();
  75. return EXIT_SUCCESS;
  76. }


Merci d'avance pour l'attention que vous porterez à mon problème, bonne journée !

Autres pages sur : probleme fmod undefined reference fmod system create

a b L Programmation
6 Avril 2012 22:07:22

La compilation a réussie, c'est juste le link qui pose problème (le link étant le regroupement des objets compilés pour construire le fichier .exe)

Ajoute la bibliothèque fmod dans la liste des bibliothèques de la configuration des liens d'édition de ton projet.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS