I have gotten the following stack trace on three different machines and on many others no trouble at all:
Feb 4, 2006 12:32:37 PM com.jmex.sound.openAL.SoundSystem initializeOpenAL
SEVERE: Failed to Initialize OpenAL...
org.lwjgl.LWJGLException: Could not load openal library.
at org.lwjgl.openal.AL.nCreate(Native Method)
at org.lwjgl.openal.AL.create(AL.java:102)
at org.lwjgl.openal.AL.create(AL.java:135)
at com.jmex.sound.openAL.SoundSystem.initializeOpenAL(Unknown Source)
at com.jmex.sound.openAL.SoundSystem.<clinit>(Unknown Source)
at com.captiveimagination.jme.GameManager.initSystem(GameManager.java:16
8)
at com.captiveimagination.jme.GameManager.run(GameManager.java:285)
at java.lang.Thread.run(Unknown Source)
To check - remove the open al ibs from a working machine and you should get the same issue
Not sure on how you are installing - but check the the correct libs are in the right places - and the java is using the right jre where the libs are installed ( if thats where you are installing them )
I don't think so. Everything is there and it is able to find it on other machines just fine. I'm simply unarchiving a zip file currently that has the entire game and a batch file that I'm running…not much that can be different between machines. :-p
It looks to me like a compatibility problem, but I'm not positive. The message looks very similar to a missing library, but slightly different.
Maybe something is wrong with the path or the name, but on some machines OpenAL is already present and it's loaded that way? With LWJGL .99 the OpenAL dll changed names , this is updated in jME CVS, but maybe you still distrubute the old DLL?
Well, I think I figured it out. I'm not sure why, but I didn't have the OpenAL32.dll in my library path. In .98 was it required? Well, I stuck that in and now it seems to work just fine. Irrisor, is that what was causing your problems as well? It would seem that most of the machines that it worked on had OpenAL32.dll in the path somewhere.
Well, like I said, there was no OpenAL32.dll in LWJGL .98, it changed names (before it was lwjglaudio.dll or something like that)
I think, like I suggested, the machines that did work probably already had OpenAL32.dll installed in a system directory from some other source (eg. 3DMark or some game)
Well, but there is a OpenAL32.dll right beside the lwjgl.dll (wich obviously is found as the lwjgl works, yes, without any lwjgl in system32 or similar) . . .
Hm… well all this function does (nCreate), is pass a bunch of different paths and use them for LoadLibrary (win) dlopen (linux) or NSAddImage (mac). [bleh]
Is it possible you are somehow using an old lwjgl in your classpath? (that looks for the old name)
I have searched in the entire file systems: found a openal32.dll in windowssystem32 on the system where sound was working! Removing it causes the same error like on the other machine :-o
The system where it was not working without an updated openal32.dll did not have any other file matching openal.dll . . .