[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#324030: swt-gtk: FTBFS on 64 bit arches: error: cast from 'void*' to 'jint' loses precision



On Tue, Sep 13, 2005 at 10:52:02AM -0600, Shaun Jackman wrote:
> SWT 3.1 does not build on 64 bit platforms due to numerous...
> 	cast from 'void*' to 'jint' loses precision
> ... errors [1]. The patch to fix this issue would be large, indeed.
> I'm inclined to remove the 64 bit platforms from the list of buildable
> architectures until this is fixed upstream. That does seem like a
> major loss though. Would someone with a 64 bit development machine be
> interested in supplying a patch?
> 
> The build times out on m68k:
> make[1]: Entering directory `/build/buildd/swt-gtk-3.1'
> gcj -fPIC -fjni -c `find org -name *.java`
> make[1]: *** [java-stamp] Terminated
> make: *** [build-stamp] Terminated
> Build killed with signal 15 after 150 minutes of inactivity
> What's the solution?

SWT generally runs on 64 bit archs. I built my Eclipse packages on amd64.
The problems is that you need to run JNIGeneratorApp on the sources. This
application replaces the integers used normally on 32-bit archs with longs
for 64-bit archs. Its IMO a bad design but the SWT people took this approach
to not need to use 8 byte variables to store pointers in them on 32-bit archs.
This process is needed to make it possible to store native pointers in java
code as java doens't know pointer types. I tested the above on amd64 but as
I saw in the build system this is used for ia65 and ppc64 too.


Michael
-- 
Escape the Java Trap with GNU Classpath!
http://www.gnu.org/philosophy/java-trap.html

Join the community at http://planet.classpath.org/



Reply to: