Erro - FranciscoWallison/openkore GitHub Wiki
Esse erro não é específico do Win32::Console, mas sim do seu cliente CPAN não conseguir baixar o índice de módulos do mirror configurado. A mensagem chave é:
-
LWP failed with code[500] message[SSL negotiation failed:] O mirror
http://cpan.strawberryperl.com/
está retornando HTTP 500 ou não consegue estabelecer uma conexão TLS/SSL corretamente. -
Como “último recurso” ele tenta usar o
ftp.exe
, mas o fallback por FTP também não está configurado ou falha.
Por que acontece
- Mirror com problema
O servidor
cpan.strawberryperl.com
pode estar temporariamente offline ou com configuração SSL incompatível. - Falta de suporte SSL O CPAN do Strawberry Perl precisa dos módulos IO::Socket::SSL e Net::SSLeay para negociar HTTPS. Se eles não estiverem instalados, qualquer HTTPS (mesmo indireto) falha.
Como resolver
1. Trocar para um mirror HTTP simples
-
Abra o shell do CPAN:
cpan
-
Liste seus mirrors atuais:
o conf urllist
-
Limpe a lista e adicione um mirror estável:
o conf urllist clear o conf urllist push http://www.cpan.org/ o conf urllist push http://mirrors.kernel.org/CPAN/ o conf commit
-
(Opcional) Desabilite o fallback por FTP, caso queira forçar sempre HTTP:
o conf ftp "" o conf commit
2. Instalar suporte a SSL no CPAN
Ainda no shell do CPAN, tente primeiro:
install IO::Socket::SSL
install Net::SSLeay
Se funcionar, seu CPAN passará a suportar HTTPS normalmente.
3. Usar o cpanminus (cpanm)
O Strawberry Perl já inclui o cpanm, que costuma lidar melhor com mirrors e SSL. Basta sair do cpan>
e, no prompt normal:
cpanm Win32::Console
Ou, se não vier instalado:
cpan install App::cpanminus
cpanm Win32::Console
4. Instalação manual
Se nada funcionar, baixe o tarball de Win32::Console em https://metacpan.org/release/Win32-Console , extraia e, dentro da pasta:
perl Makefile.PL
dmake
dmake test
dmake install
Após ajustar o mirror ou instalar o suporte SSL, volte a rodar:
cpan> install Win32::Console
e deverá concluir normalmente.