LWJGL Forum
Programming => Lightweight Java Gaming Library => Topic started by: Jens v.P. on December 08, 2010, 09:27:54
-
Hi all,
I have written a software using LWJGL. On my system (Mac OS X) everything works fine on 32 and on 64 bit. I have also tested the system in a VM with Windows XP (32 bit). Unfortunately, a user reported problems when running the system on Windows 7 (64bit) with a 32 bit Java. This is his output:
----------------------------------------
# A fatal error has been detected by the Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x691da262, pid=4296, tid=4004
#
# JRE version: 6.0_22-b04
# Java VM: Java HotSpot(TM) Client VM (17.1-b03 mixed mode, sharing windows-x86 )
# Problematic frame:
# C [atioglxx.dll+0x1aa262]
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.lwjgl.opengl.GL11.nglDrawArrays(IIIJ)V+0
j org.lwjgl.opengl.GL11.glDrawArrays(III)V+20
----------------------------------------
The system log shows, besides others, that the following dlls are loaded:
----------------------------------------
...
C:\Windows\system32\OPENGL32.dll
C:\Windows\system32\GLU32.dll
C:\Windows\system32\atioglxx.dll
.. eclipse-modeling-galileo-SR2-incubation-win32\eclipse\plugins\org.lwjgl_2.6.0\native\windows\lwjgl.dll
...
----------------------------------------
This seems to be the 32bit version, is that correct?
Could this be a 32 vs 64 bit issue or is it simply a problem of the atioglxx.dll driver (in combination with glDrawArrays)?
Cheers,
Jens
-
I use Windows 7 64-bit mainly, and it works fine.
Why is he using the 32-bit version of Java? LWJGL selects the native libraries based on the System's properties, which would be 64-bit for his system.
-
@jediTofu: He is using the 32-bit version of Java, as the software actually is an Eclipse plugin, which requires Eclipse 3.5 (3.6 doest not work). At the Eclipse download page, only a 32 bit Eclipse 3.5 is available for Windows.
Besides, as far as I read the log, the 32 bit version is selected, isn't it? In native/windows, all DLLs come in two version. I assume lwjgl.dll is 32 bit, and lwjgl64.dll is the 64 bit version. So it seems as if the 32 bit version is loaded?
Cheers,
Jens
-
Well, to find out if this is either a 32-bit vs 64-bit problem or an atioglxx.dll driver problem, you'll probably need to have him try compiling the LWJGL code in a 64-bit JDK (with either javac or ant build scripts).
I assume that Eclipse would have the same functionality as NetBeans where you can select the Java Platform. I've had a 32-bit version of NetBeans before, and I just had to manually download/install the 64-bit JDK/JRE from Java's website and then select that as the default Java platform within the IDE, as the IDE is just a wrapper around it anyway.