64bit (g)fortran JNI

Hans Horn hannes@2horns.com
Tue Apr 12 18:44:00 GMT 2011


On 4/12/2011 7:48 AM, Kai Tietz wrote:
> 2011/4/12 Hans Horn<hannes@2horns.com>:
>> Folks,
>>
>> has anybody got any experience interfacing (g)fortran routines with Java via
>> JNI?
>>
>> I'm on 64bit Windows7 using cygwin
>> x86_64-w64-mingw32-gcc and x86_64-w64-mingw32-gfortran, both v4.5.2
>>
>> Java: jdk-6u24-windows-x64
>>
>> Even though I can statically link the JNI code successfully (using gfortran
>> as linker), calling any native method from Java crashes the JVM - even when
>> no fortran code is called at all.
>>
>> my compiler/linker flags are:
>>
>> gcc_opt = -O3 -std=c99 -DCYGWIN -Wl,--kill-at -mno-cygwin -shared
>> -I${JAVA_HOME}/include/win32 -m64
>>
>> gfc_opt = -O3 -fno-underscoring -fno-f2c -W -Wunused -Wuninitialized -m64
>>
>> ld_opt = -luuid -lole32 -m64
>>
>>
>> Any clues?
>>
>> Thx.,
>> H.
>>
>>
>> P.S. I'd posted this on the gfortran list, but the chaps there were too
>> busy.
>
> Hans,
>
> this issues you see here might be reasoned by the gcc version you are
> using. There is no SEH unwinding information generated for 4.5.2 gcc.
> This feature was added to gcc 4.6.0 version for windows x64 target.
> But it might help to use here -fno-omit-frame-pointer option.  At
> least this helped me once to call JNI via Obj-C in a working way.
>
> For x64 Windows releated target questions it would be better if you
> are posting to mingw-w64's ML: I redirect this thread to this list.
>
> Regards,
> Kai

Kai,

adding -fno-omit-frame-pointer to the gcc, gfc and ld options did not 
affect the JVM crashes.

Thx.,
H.



--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list