A simple fix for Inline::Java for Cygwin when building JNI support:
>From Java/Makefile.PL:
my $jvm_lib = (($^O eq "MSWin32" or $^O eq "cygwin")
? "jvm.lib" : "libjvm.so") ;
my $jvm_so = (($^O eq "MSWin32" or $^O eq "cygwin")
? "jvm.dll" : "libjvm.so") ;
However, the result was surprising:
$ perl Makefile.PL JNI
Checking if your kit is complete...
Looks good
Building JNI extension.
Enter the path to your Java 2 SDK installation : c:/jdk1.3.0_02
Found jvm.lib in c:/jdk1.3.0_02/lib...
Found jvm.dll in c:/jdk1.3.0_02/jre/bin/hotspot...
Found jvm.dll in c:/jdk1.3.0_02/jre/bin/classic...
Found jni.h in c:/jdk1.3.0_02/include...
Found jni_md.h in c:/jdk1.3.0_02/include/win32...
Note: You may need to add c:/jdk1.3.0_02/jre/bin/hotspot or
c:/jdk1.3.0_02/jre/b
in/classic to your LD_LIBRARY_PATH environment variable in order to be
able to u
se the JNI mode.
Warning: -Lc:/jdk1.3.0_02/lib changed
to -L/tmp/.cpan/build/Inline-Java-0.21/Jav
a/c:/jdk1.3.0_02/lib
Note (probably harmless): No library found for -ljvm
Writing Makefile for Inline::Java::JNI
Writing Makefile for Inline::Java
What's with this "Warning: changing your -L flags behind your back"
business?
Cheers,
--binkley