This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 64bit (g)fortran JNI


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]