Ambiera ForumDiscussions, Help and Support. |
|
|
|||||
|
Hi all, i was trying to use the irrklang 1.4.0 DLL in a windows project which i compiled using the latest mingw version. Unfortunately the program crashes immediately after the log output: "Using DirectSound8 driver" I suspect the mingw-gcc version 4.7.0 to cause this problem (from what i found in the internet). Is that possible? What is the supported mingw-version for the Win32-gcc DLL? Thanks Andreas |
||||
|
Ah, interesting, looks like they are not binary compatible anymore. Strange. But they did this before. irrKlang was compiled using g++ (TDM-2 mingw32) 4.4.1, the one which comes with CodeBlocks 10.05 |
||||
|
Hi Niko, thanks for the fast response. Since i wanted to link irrklang statically anyway, i purchased the hobbyist license yesterday. I noticed now that static linking is only available for visual studio users. ![]() Is it possible to get a Win32-gcc binary for static linking? If not i suggest that you add this constraint to the irrklang-pro features page: "Currently there is a static library version of irrKlang for VisualStudio / Windows only." Or maybe i just didn't read carefully enough? ![]() Thanks Andreas |
||||
|
I've sent you a mail about this :) |
||||
|
Hi, just in case anyone else runs into the gcc-4.7.0 problem, i downloaded an older version of mingw (mingw-get-inst-20111118) and the irrklang DLL works without problems. Thanks again for the fast support. ![]() |
||||
|
I have the same problem: I was using the irrklang version 1.3.0 in my game, with mingw gcc 4.5.2 (and also 4.6.2) without any problem. recently I have upgrade to irrklang version 1.4.0 AND mingw gcc 4.7.0 and I have a crash: device = irrklang::createIrrKlangDevice(); seen to run, device is not NULL, but when I try to use it, for example by calling: device->setListenerPosition(irrklang::vec3df(0,0,0),irrklang::vec3df(0,0,1)); it crash.... I have try to compile the 01.helloWorld example in the package and get the same result. I have also try with the 1.3.0b and 1.3.0 version of irrKlang, same effect. the link was done with the 'libIrrKlang.a' I have try to link directly with the .dll file but get the same result. it seems that the 4.7.0 gcc compiler has something different that the older version (I also have some troubles in my own code) now (because I'm lasy) my game is in 'mute' ![]() hope the next planned version will be gcc_4.7.0 compatible! Edit: I have not try to use a dll compiled with the 4.7.0_gcc in a program compile with an older version, perhaps it work! |
||||
|
I was deeply disturbed by this break in compatibility from gcc 4.6.x to 4.7.0. Since then i was searching for a solution, but i only found "bits and pieces" flying around here and there. Finally i got the "Tech Demo" that comes with Irrlicht running with Irrklang. I used gcc 4.7.2 (i cannot speak for 4.7.0 or 4.7.1). I added the compile options -mabi=sysv -mno-ms-bitfields to Irrlicht itself (!) and to the Tech Demo and it worked. |
||||
|
can anyone teach me how to link MinGW to irrklang? or library? i am new i dont know how to link please |
||||
|
irrKlang 1.5 comes with a gcc 4.7 (and newer) compatible binary. wong: Not sure exactly, what is not working for you? On windows, using gcc, you need to tell your compiler to link to the libirrKlang.a file you can find in the irrKlang SDK under lib\Win32-gcc. Do you get an error message or something? |
||||
|
When I execute the program I see these output: irrKlang sound library version 1.5.0 Loaded plugin: ikpmp3.dll Using DirectSound8 driver Is there any way I can set the ECHO OFF? |
||||
|
Don't specify ESEO_PRINT_DEBUG_INFO_TO_STDOUT when calling createIrrKlangDevice. But I'm not sure if this also affects the very first lines you get there. |
||||
|
Hello Niko, thanks for replying. I use the below code: ISoundEngine* engine = createIrrKlangDevice(); I did not pass 'ESEO_PRINT_DEBUG_INFO_TO_STDOUT'. So is there any thing else I need to do? |
||||
|
You did pass that parameter, it is in the default options, which are: ESEO_DEFAULT_OPTIONS = ESEO_MULTI_THREADED | ESEO_LOAD_PLUGINS | ESEO_USE_3D_BUFFERS | ESEO_PRINT_DEBUG_INFO_TO_DEBUGGER | ESEO_PRINT_DEBUG_INFO_TO_STDOUT; So instead use this, and it might be better: createIrrKlangDevice (ESOD_AUTO_DETECT, |
|