Hi all,
I was thinking of building JIGS on my Windows 7 machine, but I have run into
issues.
I am using yesterdays SVN of everything (monthly rebuild of my windows
gnustep installation).
I have not yet updated to get rid of
"GNUstep/Local/Library/Headers/Foundation/Foundation.h:47:34: warning:
Foundation/NSCalendar.h: No such file or directory" - but I do not think
that matters in this case.
Problems:
1. () characters in PATH and CLASSPATH - really nothing that is GNUstep
specific but rather msys issue. I document them here if someone is searching
the ML for some reason:
On Windows 7 some applications are installed in /c/Program Files (x86)/. The
() will break the bash scripts.
Solution: Remove these path segments from PATH and CLASSPATH.
2. Compilation generates some warnings - can these be ignored?
JIGSProxyIMP.m: In function '_JIGS_jboolean_IMP_JavaMethod':
JIGSProxyIMP.m:355: warning: implicit declaration of function 'alloca'
JIGSProxyIMP.m:355: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jbyte_IMP_JavaMethod':
JIGSProxyIMP.m:400: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jchar_IMP_JavaMethod':
JIGSProxyIMP.m:445: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jshort_IMP_JavaMethod':
JIGSProxyIMP.m:490: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jint_IMP_JavaMethod':
JIGSProxyIMP.m:535: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jlong_IMP_JavaMethod':
JIGSProxyIMP.m:580: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jfloat_IMP_JavaMethod':
JIGSProxyIMP.m:625: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_jdouble_IMP_JavaMethod':
JIGSProxyIMP.m:670: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_void_IMP_JavaMethod':
JIGSProxyIMP.m:714: warning: incompatible implicit declaration of built-in
function 'alloca'
JIGSProxyIMP.m: In function '_JIGS_id_IMP_JavaMethod':
JIGSProxyIMP.m:785: warning: incompatible implicit declaration of built-in
function 'alloca'
3. It fails to link due to undefined references:
Creating library file: ./obj/libgnustep-java.dll.a
obj/libgnustep-java.obj/NSJavaVirtualMachine.m.o: In function
`+[NSJavaVirtualMa
chine startVirtualMachineWithClassPath:libraryPath:]':
C:\GNUstep\home\tkack\modules\dev-libs\java\Source/NSJavaVirtualMachine.m:132:
u
ndefined reference to `_imp__jni_createjav...@12'
collect2: ld returned 1 exit status
make[4]: *** [obj/libgnustep-java.dll.a] Error 1
make[4]: *** Deleting file `obj/libgnustep-java.dll.a'
make[3]: *** [internal-library-all_] Error 2
make[2]: *** [libgnustep-java.all.library.variables] Error 2
make[1]: *** [internal-all] Error 2
make[1]: Leaving directory `/home/tkack/modules/dev-libs/java/Source'
make: *** [internal-all] Error 2
Though, it looks like it is compiling NSJavaVirtualMAchine fine:
gcc NSJavaVirtualMachine.m -c \
-MMD -MP -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1
-DGNU_GUI_LIBRARY=1 -D
GNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -DGNUSTEP_WITH_DLL
-fno-strict-aliasing -
DBUILD_libgnustep_java_DLL=1 -Wall -DGSWARN -DGSDIAGNOSE -Wno-import -g -O2
-fgn
u-runtime -Wall -fconstant-string-class=NSConstantString
-I/c/developer/jdk1.6.0
_18/include/ -I/c/developer/jdk1.6.0_18/include/win32 -I../Java/ -I.
-I/home/tka
ck/GNUstep/Library/Headers -I/usr/GNUstep/Local/Library/Headers
-I/usr/GNUstep/S
ystem/Library/Headers \
-o obj/libgnustep-java.obj/NSJavaVirtualMachine.m.o
In file included from NSJavaVirtualMachine.h:29,
from NSJavaVirtualMachine.m:25:
C:/GNUstep/GNUstep/Local/Library/Headers/Foundation/Foundation.h:47:34:
warning:
Foundation/NSCalendar.h: No such file or directory
I checked jni.h and the function is exported properly:
_JNI_IMPORT_OR_EXPORT_ jint JNICALL
JNI_CreateJavaVM(JavaVM **pvm, void **penv, void *args);
_JNI_IMPORT_OR_EXPORT_ jint JNICALL
JNI_GetCreatedJavaVMs(JavaVM **, jsize, jsize *);
What am I missing? Any help regarding this would be most appreciated.
Cheers,
Tim
_______________________________________________
Discuss-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnustep