Are there any known 32/64 bit issues on Windows?

Started by Jens v.P., December 08, 2010, 09:27:54

Previous topic - Next topic

Jens v.P.

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





jediTofu

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.
cool story, bro

Jens v.P.

@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


jediTofu

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.
cool story, bro