cygwin issues

Tony Kimball alk@pobox.com
Thu May 24 14:58:00 GMT 2001


I'm working on a cygwin cross-compiler (linux host), from the 3.0
branch. I'm having a little trouble with boehm-gc right now. Any
tips as to what problems are likely there are appreciated. Right now,
I am working through a stack overflow in GC_clear_stack_inner. Here
are the problems encountered and *hacked* around so far (that I
recall), submitted simply to document them:
- Weak symbols don't seem to be supported for cygwin. I may be
 overlooking some configuration variable which would enable them.
 This was a problem in two areas:
 1) There are duplicate definitions of java::lang::Class::Class() in 
 natClass.o (inlined public constructor from Class.h) and Class.o
 (private constructor). I removed the inline public definition.
 2) The #pragma weak for JNI_OnLoad was ignored, so I #if 0'd out the
 calls. 
- I applied a patch from the mailing list to fix vtable symbols:
 http://gcc.gnu.org/ml/java/2001-04/msg00349.html
 
- Link arguments are wrong, out of the box:
 libgcjdata.a and -lpthread are supplied to collect2. I just work 
 around this so far.
- timezone definitions conflict. The cygwin sys/time.h and time.h 
 are a bit messy. I just #if 0'd the case of char *timezone(),
 and eliminated the '#define timezone _timezone' (to prevent
 conflicts with "struct timezone", and did s/timezone/_timezone/
 in java/lang/natSystem.cc and java/util/natGregorianCalendar.cc.
- alloca. ok, this should be obvious to me, but its not. There's
 seemingly no alloca.h for cygwin, so I just changed references to 
 __builtin_alloca. 
- More JNI crud. I did a bunch of stuff like this:
 RCS file: /cvs/gcc/gcc/libjava/prims.cc,v
 retrieving revision 1.46.4.3
 diff -u -r1.46.4.3 prims.cc
 --- prims.cc	2001年05月20日 16:24:40	1.46.4.3
 +++ prims.cc	2001年05月24日 21:16:46
 @@ -683,7 +683,9 @@
 sigaction (SIGPIPE, &act, NULL);
 #endif /* USE_WIN32_SIGNALLING */
 
 +#ifdef ENABLE_JNI
 _Jv_JNI_Init ();
 +#endif
 }
 
 #ifndef DISABLE_GETENV_PROPERTIES
 Obviously jni.cc required some attention to dyke out JNI in the
 #undef ENABLE_JNI case. 


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /