Bonjour,
J'ai voulu coder en C++ avec fmod Ex mais le compilateur ne trouve pas les méthodes de l'objet System.
Code :
Il s'agit du code trouvé dans le tutoriel de la doc de Fmod Ex.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 #include "Manageur_son.h" Manageur_son::Manageur_son() { result = FMOD::System_Create(&systeme); if(result != FMOD_OK) { std::cout << "Erreur FMOD ! " << result << FMOD_ErrorString(result) << std::endl; exit(-1); } result = systeme->init(1, FMOD_INIT_NORMAL, 0); //PREMIERE ERREUR if(result != FMOD_OK) { std::cout << "Erreur FMOD ! " << result << FMOD_ErrorString(result) << std::endl; exit(-1); } FMOD::Sound *sound; result = systeme->createStream("test.mp3", FMOD_DEFAULT, 0, &sound); if(result != FMOD_OK) { std::cout << "Erreur FMOD ! " << result << FMOD_ErrorString(result) << std::endl; exit(-1); } FMOD::Channel *channel; result = systeme->playSound(FMOD_CHANNEL_FREE, sound, false, &channel); if(result != FMOD_OK) { std::cout << "Erreur FMOD ! " << result << FMOD_ErrorString(result) << std::endl; exit(-1); } } Manageur_son::~Manageur_son() { systeme->release(); }
Voici le message du compilateur :
Voici le build log :C:\Users\..\Programmes\lecteur mp3 sans gui\Manageur_son.cpp|11|undefined reference to `FMOD::System::init(int, unsigned int, void*)@16'|
fmodex.a est dans CodeBlocks\MinGW\libCompiling: main.cpp
mingw32-g++.exe: -lfmodex: linker input file unused because linking not done
mingw32-g++.exe: -lfmodex: linker input file unused because linking not done
Compiling: Manageur_son.cpp
mingw32-g++.exe: -lfmodex: linker input file unused because linking not done
mingw32-g++.exe: -lfmodex: linker input file unused because linking not done
Linking console executable: bin\Debug\lecteur mp3 sans gui.exe
obj\Debug\Manageur_son.o: In function `_ZN12Manageur_sonC2Ev':
C:/Users/../Programmes/lecteur mp3 sans gui/Manageur_son.cpp:11: undefined reference to `FMOD::System::init(int, unsigned int, void*)@16'
Les headers sont dans CodeBlocks\Fmod Ex\inc
Le fmodex.dll est bien placé.
J'ai réinstallé fmod Ex et Code::Blocks ce soir mais ca na pas corrigé le problème. J'ai fait un RAZ des options du projet et j'ai simplement remis "-lfmodex" dans build options.
Merci pour votre aide.
Partager