解决MSYS中的“Couldn't reserve space for cygwin's heap”


    我的日常工作部分依赖于 MSYS/MinGW,可是不知道从哪天开始,在 MSYS  的 sh 下执行命令经常会出现这样的错误:

m.AllocationBase 0x0, m.BaseAddress 0x715B0000, m.RegionSize 0x460000, m.State 0x10000
C:\MSYS\bin\sh.exe: *** Couldn't reserve space for cygwin's heap (0x715B0000 <0xC70000>) in child, Win32 error 6
      0 [main] sh 5016 sync_with_child: child 4404(0x6F4) died before initialization with status code 0x
    142 [main] sh 5016 sync_with_child: *** child state waiting for longjmp
sh: fork: Resource temporarily unavailable

    最后采用的解决办法为:http://blog.chinaunix.net/u/26092/showart_234697.html 中 Korea 国同学的办法。照录如下:

6、我最后的解决方式:rebase -b 0x76000000 c:\winavr\utils\bin\msys-1.0.dll,然后问题就解决了,主要参考的网站:
http://www.avrfreaks.net/index.php?module=PNphpBB2&file=viewtopic&t=37848&highlight=
My name is hyungon.kim (Korea)
I got the same error message.
-Couldn't reserve space for cygwin's heap, Win32 error
487
I trying to several times to solve this problem.
I searching and searching Internet many times.
but I couldn't find a solution.

In 5~6 hours, finally I found it a solution.
solution--------------------------------------
first, You must have rebase.exe
If you search Internet, you find easily, and downloading.
second, rebase -b 0x76000000 /winavr/utils/bin/msys-1.0.dll
0x76000000(examlple) -> you can change this address value
properly, maybe Winavr is compiled well.

Copyright 2009-2010, zedware_at_gmail.com
Last modified on Friday, 2009-10-02