From: Luis Lavena Date: 2007-12-27T00:18:58+09:00 Subject: Re: Odd situation with mingw, readline and readline tests. On Dec 26, 2007 12:27 AM, Luis Lavena wrote: > On Dec 26, 2007 12:19 AM, Nobuyoshi Nakada wrote: > [...] > > > > I suspect readline doesn't consider it can run with redirected. > > > > Thank you for your answer Nobu, I'm looking into this right now and it > seems the "official" build of readline and the source code is broken. > > I've compared results against the 'jarp' build of readline (4.3) and it worked: > > http://jarp.does.notwork.org/win32/ > Ok, more deep information of the scenario: Readline 5.0 binaries from gnuwin32: eat CPU and hang on the same line. Readline 4.3 binaries from gnuwin32: same results as above Jarp mingw build (4.3-2): crashes Manual build of readline-4.3-2-src.zip code: segfault: d:/ruby-1.9.0-0/test/readline/test_readline.rb:20: [BUG] Segmentation fault ruby 1.9.0 (2007-12-25 revision 14709) [i386-mingw32] -- control frame ---------- c:0034 p:---- s:0122 b:0122 l:000121 d:000121 CFUNC :readline c:0033 p:0017 s:0117 b:0117 l:000878 d:000116 BLOCK d:/ruby-1.9.0-0/test/readline/test_readline.rb:20 c:0032 p:0111 s:0116 b:0116 l:000904 d:000115 BLOCK d:/ruby-1.9.0-0/test/readline/test_readline.rb:74 c:0031 p:---- s:0114 b:0114 l:000113 d:000113 FINISH :initialize c:0030 p:---- s:0112 b:0112 l:000111 d:000111 CFUNC :open_uri_original_open c:0029 p:0097 s:0107 b:0107 l:000106 d:000106 METHOD d:/ruby-1.9.0-0/lib/open-uri.rb:35 c:0028 p:0012 s:0100 b:0100 l:000904 d:0007f4 BLOCK d:/ruby-1.9.0-0/test/readline/test_readline.rb:66 c:0027 p:---- s:0100 b:0100 l:000099 d:000099 FINISH :initialize c:0026 p:---- s:0098 b:0098 l:000097 d:000097 CFUNC :open_uri_original_open c:0025 p:0097 s:0093 b:0093 l:000092 d:000092 METHOD d:/ruby-1.9.0-0/lib/open-uri.rb:35 c:0024 p:0011 s:0086 b:0086 l:000904 d:000904 METHOD d:/ruby-1.9.0-0/test/readline/test_readline.rb:65 c:0023 p:0086 s:0081 b:0081 l:000878 d:000878 METHOD d:/ruby-1.9.0-0/test/readline/test_readline.rb:19 c:0022 p:0039 s:0075 b:0075 l:000074 d:000074 METHOD d:/ruby-1.9.0-0/lib/test/unit/testcase.rb:76 c:0021 p:0015 s:0070 b:0070 l:000064 d:000069 BLOCK d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34 c:0020 p:---- s:0070 b:0070 l:000069 d:000069 FINISH :name c:0019 p:---- s:0068 b:0068 l:000067 d:000067 CFUNC :each c:0018 p:0026 s:0065 b:0065 l:000064 d:000064 METHOD d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33 c:0017 p:0015 s:0060 b:0060 l:000054 d:000059 BLOCK d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34 c:0016 p:---- s:0060 b:0060 l:000059 d:000059 FINISH :sort_by c:0015 p:---- s:0058 b:0058 l:000057 d:000057 CFUNC :each c:0014 p:0026 s:0055 b:0055 l:000054 d:000054 METHOD d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33 c:0013 p:0015 s:0050 b:0050 l:000044 d:000049 BLOCK d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34 c:0012 p:---- s:0050 b:0050 l:000049 d:000049 FINISH :(null) c:0011 p:---- s:0048 b:0048 l:000047 d:000047 CFUNC :each c:0010 p:0026 s:0045 b:0045 l:000044 d:000044 METHOD d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33 c:0009 p:0128 s:0040 b:0040 l:001bb4 d:001bb4 METHOD d:/ruby-1.9.0-0/lib/test/unit/ui/testrunnermediator.rb:46 c:0008 p:0008 s:0031 b:0031 l:000030 d:000030 METHOD d:/ruby-1.9.0-0/lib/test/unit/ui/console/testrunner.rb:67 c:0007 p:0023 s:0028 b:0028 l:000027 d:000027 METHOD d:/ruby-1.9.0-0/lib/test/unit/ui/console/testrunner.rb:41 c:0006 p:0026 s:0025 b:0025 l:000024 d:000024 METHOD d:/ruby-1.9.0-0/lib/test/unit/ui/testrunnerutilities.rb:29 c:0005 p:0051 s:0020 b:0020 l:000019 d:000019 METHOD d:/ruby-1.9.0-0/lib/test/unit/autorunner.rb:216 c:0004 p:0070 s:0016 b:0016 l:000015 d:000015 METHOD d:/ruby-1.9.0-0/lib/test/unit/autorunner.rb:12 c:0003 p:0139 s:0008 b:0007 l:000006 d:000006 TOP ../ruby-1.9.0-0/test/runner.rb:9 c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH :inherited c:0001 p:0000 s:0002 b:0002 l:000001 d:000001 TOP :314 --------------------------- DBG> : "d:/ruby-1.9.0-0/test/readline/test_readline.rb:20:in `block in test_readline'" DBG> : "d:/ruby-1.9.0-0/test/readline/test_readline.rb:74:in `block (2 levels) in replace_stdio'" DBG> : "d:/ruby-1.9.0-0/lib/open-uri.rb:35:in `open_uri_original_open'" DBG> : "d:/ruby-1.9.0-0/lib/open-uri.rb:35:in `open'" DBG> : "d:/ruby-1.9.0-0/test/readline/test_readline.rb:66:in `block in replace_stdio'" DBG> : "d:/ruby-1.9.0-0/lib/open-uri.rb:35:in `open_uri_original_open'" DBG> : "d:/ruby-1.9.0-0/lib/open-uri.rb:35:in `open'" DBG> : "d:/ruby-1.9.0-0/test/readline/test_readline.rb:65:in `replace_stdio'" DBG> : "d:/ruby-1.9.0-0/test/readline/test_readline.rb:19:in `test_readline'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testcase.rb:76:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34:in `block in run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `each'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34:in `block in run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `each'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:34:in `block in run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `each'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/testsuite.rb:33:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/ui/testrunnermediator.rb:46:in `run_suite'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/ui/console/testrunner.rb:67:in `start_mediator'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/ui/console/testrunner.rb:41:in `start'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/ui/testrunnerutilities.rb:29:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/autorunner.rb:216:in `run'" DBG> : "d:/ruby-1.9.0-0/lib/test/unit/autorunner.rb:12:in `run'" DBG> : "../ruby-1.9.0-0/test/runner.rb:9:in `
'" This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. make: *** [test-all] Error 3 I tested this in too different mingw setups, MSYS version and even with other ruby (1.8.6 and 1.8.5) all with same result. Check that no other readline.dll, readline4.dll or readline5.dll was interfering with the tests, but still the same result. This means I'll need to ditch mingw and get back to VC? :-P (just thinking out loud). -- Luis Lavena Multimedia systems - A common mistake that people make when trying to design something completely foolproof is to underestimate the ingenuity of complete fools. Douglas Adams