Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [platform-swt-dev] SWT Cocoa for 64bit ?

ok, thanks.
Based on that thread, I guess the question (short term) is: is it possible to run the 32 bit port on my mac book pro (core 2 duo) machine ?
(If I remember correctly, I don't think so b/c the Java 6 JRE is 64bit and doesn't like the 32bit libs)

If not, I can always do the dev on my amd64 gentoo box ;)

In any case, let me know if/when I might be useful.

On Jul 2, 2008, at 1:26 PM, Carolyn MacLeod wrote:


Please read bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=239301.
Carolyn



From: String Larson <string01@xxxxxxxxx>
To: "Eclipse Platform SWT component developers list." <platform-swt-dev@xxxxxxxxxxx>
Date: 07/02/2008 02:08 PM
Subject: Re: [platform-swt-dev] SWT Cocoa for 64bit ?





Yep, I took out the other arch-s and it is x86_64 that dies.
Thanks for the info.
I'll start looking at that stuff this week(end).

On Jul 2, 2008, at 12:24 PM, Scott Kovatch wrote:

> Unfortunately there's no way to tell which architecture it's  
> complaining
> about. I will take a wild guess, though, and say it's x86_64.
>
> The SWT stores pointers to native objects in ints, which are 32-bit  
> values.
> A simple cast to a pointer will give you this message. Look for the  
> places
> that turn an jint parameter into a pointer -- that jint will need to  
> be a
> jlong, and then work backwards from there.
>
> The conversion from jlong to a pointer is somewhat tricky, but if you
> install Java 6 on the Mac you'll get JavaNativeFoundation.framework  
> which
> has a file called JNFJNI.h which provides two macros ptr_to_jlong and
> jlong_to_ptr:
>
> // from jlong.h
> // All pointers in and out of JNI functions should be expressed as  
> jlongs
> // to accomodate for both 32-bit and 64-bit pointer sizes
> #define jlong_to_ptr(a) ((void *)(uintptr_t)(a))
> #define ptr_to_jlong(a) ((jlong)(uintptr_t)(a))
>
> Those macros are simple enough that they could be copied to some  
> standard
> header.
>
> I think an early task in the Cocoa SWT needs to be making sure we  
> store and
> pass all pointers as long/jlong values. That way you don't have to  
> think
> about the differences between i386 and x86_64.
>
> Scott
>
> On 7/2/08 7:28 AM, "String Larson" <string01@xxxxxxxxx> wrote:
>
>> I tried this, and get:
>>
>> cc -c -xobjective-c -Wall -arch x86_64 -arch i386 -arch ppc -
>> DSWT_VERSION=3448   -DUSE_ASSEMBLER -DCOCOA -I /System/Library/
>> Frameworks/JavaVM.framework/Headers -I /System/Library/Frameworks/
>> Cocoa.framework/Headers c.c
>> <built-in>:0: warning: Mac OS X version 10.5 or later is needed for
>> use of the new objc abi
>> c.c: In function ‘Java_org_eclipse_swt_internal_C_free’:
>> c.c:35: warning: cast to pointer from integer of different size
>> ...
>>
>>
>>
>> On Jul 1, 2008, at 3:47 PM, Alex Blewitt wrote:
>>
>>> If you build with -arch x86 -arch x86_64, you should get an intel  
>>> fat
>>> binary that can run in either 64 or 32-bit mode. However, I don't  
>>> know
>>> if all the libraries that SWT depends on are 64 bit yet, so there  
>>> may
>>> be compile/link errors. Better still, stick -arch ppc and -arch  
>>> ppc64
>>> on there, and you'll build for everything :-)
>>>
>>> You can use lipo -info libswt-... to find out what it contains now:
>>>
>>> apple[tmp] lipo -info libswt-carbon-3436.jnilib
>>> Architectures in the fat file: libswt-carbon-3436.jnilib are: i386  
>>> ppc
>>>
>>> (this is from an old build of Eclipse)
>>>
>>> Alex
>>>
>>> On Tue, Jul 1, 2008 at 5:55 PM, String Larson <string01@xxxxxxxxx>
>>> wrote:
>>>>
>>>> I was going to try to run Andy's NatTable release on OSX.
>>>> I see the libswt-* files are still 32 bit universal binaries.
>>>>
>>>> Has anyone converted those to 64bit ?
>>>>
>>>> I was looking at the FAQ for converting GTK Linux 32 to 64 for
>>>> hints but
>>>> could not find parallels for Cocoa.
>>>>
>>>> Thanks.
>>>> -str
>>>>
>>>> _______________________________________________
>>>> platform-swt-dev mailing list
>>>> platform-swt-dev@xxxxxxxxxxx
>>>>
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev
>>>>
>>> _______________________________________________
>>> platform-swt-dev mailing list
>>> platform-swt-dev@xxxxxxxxxxx
>>>
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev
>>
>> _______________________________________________
>> platform-swt-dev mailing list
>> platform-swt-dev@xxxxxxxxxxx
>>
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev
>
> _______________________________________________
> platform-swt-dev mailing list
> platform-swt-dev@xxxxxxxxxxx
>
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev

_______________________________________________
platform-swt-dev mailing list
platform-swt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev

_______________________________________________
platform-swt-dev mailing list
platform-swt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-swt-dev


Back to the top