Cygwin GCC ile JNI DLL Derlenmesi
Windows altında cygwin gcc/g++ kullanarak JNI DLL’leri derlemek istediğinizde aşağıdaki sorunla karşılaşmanız mümkün.
/cygdrive/C/Program Files/Java/jdk1.6.0_07/include/win32/jni_md.h:16: error: '__int64' does not name a type
Bu sorun jni_md.h başlık dosyasındaki __int64 tipinin gcc/g++’da tanımlı olmamasından kaynaklanır. Bu sorunu gidermek için __int64 tipini tanımlamak gerekiyor. Bu iki şekilde yapılabilir: gcc/g++’ya -D parametresi ile tanımı geçirerek:
-D__int64="long long"
veya jni_md.h başlık dosyasında değişiklik yaparak
#ifdef __GNUC__ typedef long long jlong; #else typedef __int64 jlong; #endif