Java-Gaming.org Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (774)
Games in Android Showcase (230)
games submitted by our members
Games in WIP (856)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Win64 x64 port  (Read 1634 times)
0 Members and 1 Guest are viewing this topic.
Offline mabraham

Junior Devvie





« Posted 2006-04-12 22:19:42 »

Hi,

I am trying to build JOGL for Windows x64, and so far it looks promising.  I've modified the build scripts to add a new compiler config (vc8_x64), amended build.xml and a few other "things", some stuff in gluegen (CPU.java), set JAVA_HOME to the 64-bit JDK install, and eventually got it to build.

However, running some stuff it craps out [1] setting the pixel format.  I eventually tracked down the problem, wrong layout of the PIXELFORMATDESCRIPTOR struct.  To cut the long story short, this is due to gluegen assuming DWORD (unsigned long) being 64-bit wide, which is certainly not the case with the VC compiler!  Indeed I'm wondering whether any other compiler treats longs as 64-bit.  I seem to remember 'long long' being 64-bit on gcc.  Anyway I'm guessing this can be amended in one of the gluegen config files, and would be grateful for any hints.  I've also checked the stub windows.h header that is in CVS, and it looks like all the other types would be correct on either arch.

Thanks in advance,
Matt.

[1] I haven't got the output handy as I'm writing this from my (32-bit) laptop, but will provide more info when I get back to the 64-bit machine...
Offline Ken Russell

JGO Coder




Java games rock!


« Reply #1 - Posted 2006-04-13 01:09:55 »

What is the actual #define / typedef of DWORD in your 64-bit SDK? You should be able to change the typedef of DWORD in make/stub_includes/win32/windows.h appropriately (to unsigned int?) and GlueGen should start producing correct code.

GlueGen assumes an LP64 data model (longs and pointers become 64-bit). This is the case on all of the currently supported 64-bit platforms. It is very possible that JOGL's notion of the size of the DWORD type is wrong.
Offline mabraham

Junior Devvie





« Reply #2 - Posted 2006-04-14 11:46:10 »

OK it works now, thanks Ken!  Changing the typedef for DWORD to unsigned int did the trick, and hurray we have a 64-bit Windows binary that appears to work fine (limited testing).

Please find attached patches to the current gluegen and jogl code base, with the changes required to build JOGL with MS Visual Studio 2005.  Note this requires the Professional edition, the free Express edition will not build 64-bit binaries.

Ken, I really hope you will consider this for inclusion with JSR-231 beta4.  Smiley

Thanks,
Matt.
 
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Ken Russell

JGO Coder




Java games rock!


« Reply #3 - Posted 2006-04-14 16:56:25 »

Absolutely. Thanks for the patch; it's been applied with a few modifications to the source tree. Let me know if anything was broken during the merge. We'll try to provide precompiled Windows 64-bit binaries for beta 4, but can't promise anything (we currently don't have such a machine in our nightly build setup).
Offline mabraham

Junior Devvie





« Reply #4 - Posted 2006-04-16 13:13:44 »

For those who can be bothered to build their own binaries, I forgot to mention that you must set JAVA_HOME to the correct 64-bit JDK location, otherwise gluegen won't correctly identify your architecture.  This is a bit of a shame but I could think of no clever way around this.

Matt.
Pages: [1]
  ignore  |  Print  
 
 

 
EgonOlsen (1865 views)
2018-06-10 19:43:48

EgonOlsen (1888 views)
2018-06-10 19:43:44

EgonOlsen (1256 views)
2018-06-10 19:43:20

DesertCoockie (1688 views)
2018-05-13 18:23:11

nelsongames (1357 views)
2018-04-24 18:15:36

nelsongames (1975 views)
2018-04-24 18:14:32

ivj94 (2743 views)
2018-03-24 14:47:39

ivj94 (1945 views)
2018-03-24 14:46:31

ivj94 (3036 views)
2018-03-24 14:43:53

Solater (1088 views)
2018-03-17 05:04:08
Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08

Deployment and Packaging
by gouessej
2018-08-22 08:03:45

Deployment and Packaging
by philfrei
2018-08-20 02:33:38

Deployment and Packaging
by philfrei
2018-08-20 02:29:55

Deployment and Packaging
by philfrei
2018-08-19 23:56:20

Deployment and Packaging
by philfrei
2018-08-19 23:54:46
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!