From: neomjp neomjp Date: 2009-05-12T01:10:30+09:00 Subject: [ruby-core:23429] [Bug #1388] cygwin-1.7, gcc4-4.3, and ruby-1.9. make btest #236 test_io.rb Segmentation fault Issue #1388 has been updated by neomjp neomjp. On 2009/05/01 0:57, neomjp neomjp wrote: > CC=gcc-4 configure --program-suffix="-19" --disable-pthread > make THREAD_MODEL=w32 > 2. Objects are linked without -lpthread. It seems the miniruby was still using pthread even when linked without -lpthread. The only difference in "strings miniruby | grep -i pthread" with/without --disable-pthread was the absence/presence of pthread_attr_setinheritsched(&attr, PTHREAD_INHERIT_SCHED) All other pthread functions were the same. miniruby was still using pthread. So, I tried forcing the compilation of thread_win32.c by replacing #if defined(_WIN32) with #if defined(_WIN32) || defined(__CYGWIN__) in thread.c:172 and vm_core.h:25 (r23390), and CC=gcc-4 configure --program-suffix="-19" --disable-pthread make THREAD_MODEL=w32 The compilation went through to the end (with some warnings), but "make btest" failed miserably with numerous segfaults and four test failures. Hmm, now I understand that win32 thread does not work in cygwin. I will take back my claims about the option to --disable-pthread in cygwin-1.7. It was not the main topic of this bug, anyway. Besides, it was a rather low-priority feature request in a non-default setting. Finally, an update: * eval_intern.h: FIXED in r23317. Thanks. * ruby.c: Nobu's fix in [ruby-core:23255] will be fine. * strftime.c: A patch proposed in [ruby-core:23241]. * common.mk :INVALID, WONTFIX * Segfault in #236 test_io.rb: This was what this bug was about. -- neomjp ---------------------------------------- http://redmine.ruby-lang.org/issues/show/1388 ---------------------------------------- http://redmine.ruby-lang.org