Migrating to Windows 7 x64, I'm having problems running Cygwin in this environment. It looks like ASLR feature of Windows 7 is the cause. It causes various DLLs to load at different addresses in virtual memory, and it looks like Cygwin expects to have the same base addresses for the same DLLs in the parent and child processes, when a child process is spawned. Apparently there is a specific check for that and the following message is displayed:
5816 [main] perl 4148 C:\Cygwin\bin\perl.exe: *** fatal error - unable to remap C:\Cygwin\lib\perl5\5.10\i686-Cygwin\auto\Data\Dumper\Dumper.dll to same address as parent(0x9A0000) != 0xB40000
I tried turning off ASLR by setting HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\MoveImages: DWORD to 0, but it doesn't seem to do anything: the DLLs are still loaded into random places (verified by the above message and by looking at the address space of the both processes using Process Explorer)
While in the meantime I'm planning on using XP Mode for running Cygwin, it seems a bit artificial and create some limitations.
Does anyone know of a way to run Cygwin directly under Windows 7 x64?