
.c_dependences jniInit.c util.c || (rm -f .c_dependences ; exit 1) m4 JNI.m4 > JNI.hs m4 GCJNI.m4 > GCJNI.gc /cygdrive/c/Programme/GreenCard/lib/greencard-3.01/greencard-bin --target ghc - i /cygdrive/c/Programme/GreenCard/lib/greencard-3.01/imports --
Hello! I am trying to build GCJNI 1.2 under Windows (cygwin) with GHC 6.2.1 and Green Card 3.01. I am getting following error messages when entering "make". <error-messages> $ make make -C src make[1]: Entering directory `/cygdrive/c/dapWork/temp/downloads/gcjni/gcjni- 1.2/ src' gcc -MM -I/cygdrive/c/Programme/Java/jdk1.5.0/include -I./win32 libdir=/cygdrive/c/ Programme/GreenCard/lib/greencard-3.01/ GCJNI.gc Warning: unable to find StdDIS along the import path: /cygdrive/c/Programme/Gree nCard/lib/greencard-3.01/, /cygdrive/c/Programme/GreenCard/lib/greencard- 3.01/im ports, user error ("GCJNI.gc", proc. spec "gcJniJObjectToString", line 139: marshall: Don't know how to marshall (declare { jniObjRef_t * } oref in (J Object (foreign oref {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniGetJVMState", line 156: Don't know how to unmarshall ((JVM (addr vmp)),(JEnv (addr envp))) "GCJNI.gc", proc. spec "jniGetEnv", line 160: Don't know how to unmarshall (JEnv (addr envp)) "GCJNI.gc", proc. spec "jniFreeVM", line 167: marshall: Don't know how to marshall (JVM (addr vm)) "GCJNI.gc", proc. spec "jniAddClassPath", line 181: marshall: Don't know how to marshall (string s) "GCJNI.gc", proc. spec "jniAddJVMOpt", line 188: marshall: Don't know how to marshall (string s) "GCJNI.gc", proc. spec "jniFindClass", line 192: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "jniIsInstanceOf", line 200: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniExceptionOccurred", line 206: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "jniExceptionDescribe", line 211: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "jniExceptionClear", line 215: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniDeleteLocalRef", line 224: marshall: Don't know how to marshall (declare { jniObjRef_t * } oref in (J Object (foreign oref {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniNewLocalRef", line 230: marshall: Don't know how to marshall (declare { jniObjRef_t * } lsrc in (J Object (foreign lsrc {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniNewGlobalRef", line 239: marshall: Don't know how to marshall (declare { jniObjRef_t * } loref in ( JObject (foreign loref {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniGetStaticMethodID", line 248: marshall: Don't know how to marshall (declare { jniObjRef_t * } cls in (JO bject (foreign cls {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniGetMethodID", line 255: marshall: Don't know how to marshall (declare { jniObjRef_t * } cls in (JO bject (foreign cls {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniGetStaticFieldID", line 263: marshall: Don't know how to marshall (declare { jniObjRef_t * } cls in (JO bject (foreign cls {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniGetFieldID", line 270: marshall: Don't know how to marshall (declare { jniObjRef_t * } cls in (JO bject (foreign cls {jniFreeObjRef}))) "GCJNI.gc", proc. spec "jniNewStringUTF", line 277: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "jniNewObjectArray", line 285: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniObjToJValue", line 295: marshall: Don't know how to marshall (declare { jniObjRef_t * } oref in (J Object (foreign oref {jniFreeObjRef}))) "GCJNI.gc", proc. spec "gcJniObjFromJValue", line 304: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "jniPushLocalFrame", line 311: marshall: Don't know how to marshall (int count) "GCJNI.gc", proc. spec "gcJniIntToJValue", line 325: marshall: Don't know how to marshall (int val) "GCJNI.gc", proc. spec "gcJniIntFromJValue", line 330: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "gcJniFloatToJValue", line 335: marshall: Don't know how to marshall (float val) "GCJNI.gc", proc. spec "gcJniFloatFromJValue", line 340: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "gcJniDoubleToJValue", line 345: marshall: Don't know how to marshall (double val) "GCJNI.gc", proc. spec "gcJniDoubleFromJValue", line 350: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "gcJniBoolToJValue", line 355: marshall: Don't know how to marshall (bool val) "GCJNI.gc", proc. spec "gcJniBoolFromJValue", line 360: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "gcJniCharToJValue", line 365: marshall: Don't know how to marshall (char val) "GCJNI.gc", proc. spec "gcJniCharFromJValue", line 370: marshall: Don't know how to marshall (addr jvalp) "GCJNI.gc", proc. spec "gcJniAllocJValue", line 377: marshall: Don't know how to marshall (int nv) "GCJNI.gc", proc. spec "gcJniFree", line 386: marshall: Don't know how to marshall (addr a) "GCJNI.gc", proc. spec "gcJniCallStaticVoidMethod", line 391: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallVoidMethod", line 396: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualVoidMethod", line 401: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticObjectField", line 406: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetObjectField", line 414: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticObjectMethod", line 422: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallObjectMethod", line 430: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualObjectMethod", line 439: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticIntField", line 451: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetIntField", line 457: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticIntMethod", line 463: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallIntMethod", line 469: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualIntMethod", line 474: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticCharField", line 481: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetCharField", line 487: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticCharMethod", line 493: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallCharMethod", line 499: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualCharMethod", line 504: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticByteField", line 511: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetByteField", line 517: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticByteMethod", line 523: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallByteMethod", line 529: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualByteMethod", line 534: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticFloatField", line 541: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetFloatField", line 547: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticFloatMethod", line 553: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallFloatMethod", line 559: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualFloatMethod", line 564: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticDoubleField", line 571: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetDoubleField", line 577: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticDoubleMethod", line 583: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallDoubleMethod", line 589: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualDoubleMethod", line 594: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetStaticBooleanField", line 601: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetBooleanField", line 607: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallStaticBooleanMethod", line 613: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallBooleanMethod", line 619: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniCallNonvirtualBooleanMethod", line 624: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniNewObject", line 635: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniIsSameObject", line 649: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniGetObjectClass", line 658: marshall: Don't know how to marshall (JEnv (addr env)) "GCJNI.gc", proc. spec "gcJniAllocArgLocals", line 677: marshall: Don't know how to marshall (int capacity) "GCJNI.gc", proc. spec "gcJniFreeArgLocals", line 682: marshall: Don't know how to marshall (addr als) ) make[1]: *** [GCJNI.hs] Error 1 make[1]: Leaving directory `/cygdrive/c/dapWork/temp/downloads/gcjni/gcjni- 1.2/s rc' make: *** [src] Error 2 </error-messages> I think that the error is caused by missing StdDIS file in the GreenCard directory. The files in this directory are (ls -lAR): <filelist> .: total 0 drwxr-xr-x+ 2 eleonora Kein 0 Feb 15 21:55 bin drwxr-xr-x+ 3 eleonora Kein 0 Feb 15 21:47 lib ./bin: total 1 -rwxr-xr-x 1 eleonora Kein 164 Feb 15 21:55 greencard ./lib: total 0 drwxr-xr-x+ 4 eleonora Kein 0 Feb 15 21:55 greencard-3.01 ./lib/greencard-3.01: total 1867 drwxr-xr-x+ 2 eleonora Kein 0 Feb 15 21:55 Foreign -rwxr-xr-x 1 eleonora Kein 1895082 Feb 15 21:55 greencard-bin.exe drwxr-xr-x+ 3 eleonora Kein 0 Feb 15 21:55 imports -rwxr-xr-x 1 eleonora Kein 6612 Feb 15 21:55 libHSgreencard.a -rwxr-xr-x 1 eleonora Kein 8670 Feb 15 21:55 libHSgreencard.p_a ./lib/greencard-3.01/Foreign: total 4 -rwxr-xr-x 1 eleonora Kein 3309 Feb 15 21:55 GreenCard.gc ./lib/greencard-3.01/imports: total 0 drwxr-xr-x+ 2 eleonora Kein 0 Feb 15 21:55 Foreign ./lib/greencard-3.01/imports/Foreign: total 16 -rwxr-xr-x 1 eleonora Kein 7392 Feb 15 21:55 GreenCard.hi -rwxr-xr-x 1 eleonora Kein 7397 Feb 15 21:55 GreenCard.p_hi </filelist> As you see, there is no StdDIS file among them. AFAIK, the installation of GreenCard 3.01 was successful. I would like to receive a hint about how this problem can be solved. TIA Dmitri Pissarenko -- Dmitri Pissarenko Software Engineer http://dapissarenko.com