MSYS and Cygwin on x64 (AMD64)

From Mozilla x86-64

There is a known issue when you use MSYS and Cygwin on Windows x64.

Cygwin doesn't work on 64-bit CMD.EXE

When I build Mozilla on XP build 1218, cygwin throws the following error.

bash-2.05b$ sh
C:\cygwin\bin\bash.exe (1188): *** fork: can't reserve memory for stack 0x490000 - 0x690000,
Win32 error 0
     49 [main] bash 1204 sync_with_child: child 1188(0x298) died before initialization
with status code 0x1
   1349 [main] bash 1204 sync_with_child: *** child state waiting for longjmp
bash: fork: Resource temporarily unavailable

I found workaround. We must use 32-Bit CMD.EXE on C:\WINDOWS\SYSWOW64\CMD.EXE when you use CygWIN.

MSYS doesn't works on XP/2003 x64

C:\mozilla-build\msys\bin>bash
bash-2.04$ ls
C:\mozilla-build\msys\bin\bash.exe: *** fork: can't reserve memory for stack
0x480000 - 0x680000, Win32 error 0
      0 [main] bash 1000 sync_with_child: child 2228(0x304) died before
initialization with status code 0x1
  16586 [main] bash 1000 sync_with_child: *** child state waiting for longjmp
bash: fork: Resource temporarily unavailable

Same issue of CYGWIN. Run 32-Bit CMD.EXE on C:\WINDOWS\SYSWOW64\CMD.EXE at first.

MSYS doesn't work on Vista x64

Even if you run MSYS 1.10 on 32bit CMD.EXE, it does not work. Because verison 1.10 doesn't support Vista x64. You have to update latest version of msys-1.0.dll. (version 1.11 or later)