*** Couldn't reserve space for cygwin's heap (0x150000) in child, cygheap, Win32 error 0 0 [main] make 4336 sync_with_child: child 2968(0x120) died before initialization with status code 0x1 308 [main] make 4336 sync_with_child: *** child state waiting for longjmp
怎么能解决? 谢谢
大多数抱怨这个问题的用户报告说重启后会消失。 如果您正在使用Windows 7,请在此线程中查看来自BerndP的消息,它有一些与调整Windows上的虚拟内存设置相关的提示。
这篇文章对Cygwin的随机问题进行了一个有趣的讨论。 BLODA列表列出了已知在Cygwin中导致奇怪故障和问题的应用程序列表。
编辑 :
Windows 8还没有正式发布,所以不要指望Cygwin能够使用它 。
Cygwin可以运行在所有现代32位版本的Windows上,包括截至编写本文时的Windows 2000,Windows XP,Windows server 2003,Windows Vista,Windows server 2008,Windows 7以及WOW64在Windows 64位版本(XP / 2003 / Vista / 2008/7/2008 R2)上的32位环境。
我刚刚遇到了这个问题,并建议rebase msys-1.0.dll是造成这个问题。
具体来说,我使用了ReBase.exe工具:
C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64\ReBase.Exe
这是微软平台sdk v7.1(也许还有其他版本)的一部分。
采取dll的备份,然后在平台sdk命令提示符下尝试这个命令行:
rebase -b 0x30000000 /path/to/msys-1.0.dll
这解决了我的问题。
为了提高兴趣,我推荐的虚拟内存设置设置为3GB左右,实际分配的虚拟内存为6GB。
我正在使用eclipse,并在Windows 8上使用MinGW + Yagarto。重新启动没有做任何事情。
我通过扩展我的虚拟内存解决了这个问题,最初设置为896Mb,不在3000Mb,并且工作正常。
这个问题可以通过改变gcc.exe的兼容模式(或者make的任何名字)到Windows XP来解决(在属性 – >兼容性中)。但是,脚本必须以管理员身份执行,以避免在调用gcc.exe时多次确认