É provável que a política de execução tenha sido definida para a máquina inteira usando Set-ExecutionPolicy Unrestricted
em um prompt normal do PowerShell. Em um sistema de 64 bits, existem duas versões do PowerShell: uma de 64 bits e outra de 32 bits. Nessa situação, executar o PowerShell normalmente fornecerá a versão de 64 bits. Parece, no entanto, que o Ruby é um processo de 32 bits. A julgar pela presença de SysWOW64
na mensagem de erro, o Ruby de 32 bits está lançando o PowerShell de 32 bits, que não obtém a mesma exibição do sistema que o PowerShell de 64 bits. O PowerShell lançado em Ruby não vê a política de execução alterada, por isso se recusa a executar o script de perfil.
Para corrigir o problema, execute o comando de definição de política a partir de um prompt elevado do PowerShell de 32 bits. Você pode obter um desses da entrada "Windows PowerShell (x86)" em Iniciar. Você também pode definir a política apenas para sua conta de usuário:
Set-ExecutionPolicy Unrestricted -Scope CurrentUser
Isso parece funcionar em bitnesses. Por fim, se você não precisar executar os scripts de perfil, também terá a opção de desativar o carregamento do perfil com a opção -noprofile
para powershell
.