discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Problems building JIGS on msys/mingw


From: Tim Kack
Subject: Problems building JIGS on msys/mingw
Date: Wed, 24 Nov 2010 10:45:45 +0100

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_CreateJavaVM@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


reply via email to

[Prev in Thread] Current Thread [Next in Thread]