Cygwin no Windows 7 x64

6

Ao migrar para o Windows 7 x64, estou com problemas para executar o Cygwin neste ambiente. Parece que o recurso ASLR do Windows 7 é a causa. Isso faz com que várias DLLs sejam carregadas em endereços diferentes na memória virtual, e parece que o Cygwin espera ter os mesmos endereços base para as mesmas DLLs nos processos pai e filho, quando um processo filho é gerado. Aparentemente, há uma verificação específica para isso e a seguinte mensagem é exibida:

5816 [main] perl 4148 C:\Cygwin\bin\perl.exe: *** fatal error - unable to remap C:\Cygwin\lib\perl5.10\i686-Cygwin\auto\Data\Dumper\Dumper.dll to same address as parent(0x9A0000) != 0xB40000

Eu tentei desativar o ASLR definindo HKLM \ SYSTEM \ CurrentControlSet \ Control \ Gerenciador de sessão \ Memory Management \ MoveImages: DWORD como 0, mas parece não fazer nada: as DLLs ainda são carregadas em locais aleatórios pela mensagem acima e olhando para o espaço de endereço dos dois processos usando o Process Explorer)

Enquanto isso, estou planejando usar o XP Mode para executar o Cygwin, parece um pouco artificial e criar algumas limitações.

Alguém sabe de uma maneira de executar o Cygwin diretamente no Windows 7 x64?

    
por Rom 12.09.2009 / 23:32

3 respostas

4

teve o mesmo problema no Windows 7 de 64 bits, rebase resolve:

    
por 19.09.2009 / 10:13
1

perlrebase (eu sou o mantenedor e autor)

Ainda não verificado:

  • Se você ainda tiver erros de garfo, tente limpe o sinalizador ASLR na DLL.
    peflags -d0 em todas as dll's (por exemplo, seu rebase.lst)

Estou tentando isso agora e, se ajudar, lançarei uma nova versão do perl.

    
por 01.12.2010 / 08:06
0

É uma daquelas poucas situações em que você precisará do Modo Windows XP , e não Compatibilidade com XP Espero que o seu processador atenda aos requisitos; Você precisará de um processador que suporte virtualização de hardware.

Para garantir, execute a ferramenta apropriada abaixo.

  • Utilitário de identificação do processador Intel
  • Utilitário de compatibilidade do AMD Virtualization System

Nota O Modo XP ainda está no modo candidato a lançamento. Pelo menos na minha máquina de 32 bits, ele se comporta bem. Estou confiante de que você terá uma experiência semelhante em seu x64.

EDIT: Eu posso postar apenas um hiperlink por resposta até que eu não seja mais um novo usuário. Então os links vão em um comentário para este post

    
por 13.09.2009 / 04:33