openAL Beispielcode -> Linker Error!
-
Servus,
ich versuche gerade openAL zum laufen zu bringen. Ich habe mir folgende Beispielcodes reingezogen:
#1 http://www.devmaster.net/articles/openal-tutorials/lesson1.php
und
#2 http://www.edenwaith.com/products/pige/tutorials/openal.phpbekomme aber beide nicht zum laufen.
Das ist meine Ausgabe beim make'n von lesson 1 #1:
g++ -c main.cpp -Wno-deprecated main.cpp: In function ‘ALboolean LoadALData()’: main.cpp:73: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) main.cpp:73: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) main.cpp:75: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) main.cpp:75: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) g++ -o lesson1 main.o -lopenal main.o: In function `KillALData()': main.cpp:(.text+0x2f): undefined reference to `alutExit' main.o: In function `LoadALData()': main.cpp:(.text+0xd8): undefined reference to `alutLoadWAVFile' main.cpp:(.text+0x122): undefined reference to `alutUnloadWAV' main.o: In function `main': main.cpp:(.text+0x295): undefined reference to `alutInit' collect2: ld returned 1 exit status make: *** [lesson1] Fehler 1
bzw folgende beim zweiten Beispielcode:
[code] gcc openal.cpp -o openal -lopenal -lglut openal.cpp: In function ‘void init()’: openal.cpp:116: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:116: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:118: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) openal.cpp:118: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) openal.cpp:121: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:121: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:123: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) openal.cpp:123: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) openal.cpp:126: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:126: warning: ‘void alutLoadWAVFile(ALbyte*, ALenum*, void**, ALsizei*, ALsizei*, ALboolean*)’ is deprecated (declared at /usr/include/AL/alut.h:113) openal.cpp:128: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) openal.cpp:128: warning: ‘void alutUnloadWAV(ALenum, ALvoid*, ALsizei, ALsizei)’ is deprecated (declared at /usr/include/AL/alut.h:116) /tmp/ccYTLokR.o: In function `keyboard(unsigned char, int, int)': openal.cpp:(.text+0x2e1): undefined reference to `alutExit' /tmp/ccYTLokR.o: In function `init()': openal.cpp:(.text+0x55d): undefined reference to `alutInit' openal.cpp:(.text+0x619): undefined reference to `alutLoadWAVFile' openal.cpp:(.text+0x679): undefined reference to `alutUnloadWAV' openal.cpp:(.text+0x6ae): undefined reference to `alutLoadWAVFile' openal.cpp:(.text+0x70e): undefined reference to `alutUnloadWAV' openal.cpp:(.text+0x743): undefined reference to `alutLoadWAVFile' openal.cpp:(.text+0x7a3): undefined reference to `alutUnloadWAV' /tmp/ccYTLokR.o: In function `main': openal.cpp:(.text+0xa63): undefined reference to `alutInit' collect2: ld returned 1 exit status
Was sagt mir das? Will der statisch linken? Ich hab aber keine openal.a sondern nur eine openal.so also muss das ganze wohl dynamisch gehen, oder??
Und was ist überhaupt mit diesen ganzen deprecated warnings? Wie lauten denn die entsprechenden "neuen" Funktionen dafür jetzt?
Hilfe, Wer kennt sich aus?
-
vergessts, ich hatte
-lalut
vergessen.