Como lidar com a falha de reconstrução do Node-Gyp no Mac (03.28.24)

node-gyp é uma ferramenta bacana que permite aos desenvolvedores compilar módulos complementares do Node em múltiplas plataformas. É muito popular e amplamente usado hoje, por isso é frequentemente incluído como uma dependência para a maioria dos pacotes NPM.

Na maioria dos sistemas operacionais, node-gyp não causa nenhum problema. A instalação do node-gyp e do restante dos pacotes NPM geralmente funciona de maneira suave e eficiente. No entanto, esse não é o caso para todos os usuários. Alguns desenvolvedores relataram ter problemas para reconstruir o node-gyp no macOS, resultando em uma experiência nada estelar para os desenvolvedores afetados. Esse erro também leva a uma infinidade de armadilhas e permite muitas maneiras de as coisas darem errado.

Este problema não é novo. Os desenvolvedores que usam versões mais antigas do macOS já encontraram esse erro antes. Com o lançamento do macOS Catalina, vários desenvolvedores também relataram falhas na reconstrução do node-gyp no Mac após a atualização para a nova versão do macOS. Este erro impediu que os desenvolvedores instalassem os pacotes node-gyp de que eles precisam.

Se você encontrou esse erro, entenderá como a falha de reconstrução do node-gyp no Mac pode ser frustrante. Você não pode seguir em frente com seu aplicativo ou desenvolvimento de software, a menos que esse erro seja corrigido. Felizmente, fizemos todo o trabalho para você. Se você achar que é impossível seguir em frente com seu projeto por causa desse erro, você pode tentar qualquer uma das soluções listadas abaixo para resolvê-lo.

O que é Node-Gyp?

node-gyp é uma ferramenta usada para compilar complementos Node.js, que são módulos Node.js nativos escritos em C ou C ++. Esses módulos precisam ser compilados em sua máquina usando uma ferramenta como o node-gyp. O Node-gyp funciona no Windows, macOS e Linux.

O Node-gyp é geralmente fácil de usar devido à sua interface consistente. Você também pode usar os mesmos comandos para construir ou reconstruir seu módulo em diferentes plataformas. O Node-gyp também oferece suporte a várias versões de destino do Node.

Se você receber um erro npm gyp no Mojave ou em versões anteriores do macOS, verifique novamente os requisitos para que o node-gyp funcione.

Aqui estão os requisitos que você precisa instalar para que o node-gyp funcione no macOS:

  • Python v2.7, v3.5, v3.6 ou v3. 7
  • Xcode - um utilitário que permite aos desenvolvedores criar aplicativos no macOS, iOS e iPadOS.

Você também precisa instalar a versão correta da linha de comando do Xcode Ferramentas, que fazem parte do pacote de ferramentas e bibliotecas de desenvolvimento de software do XCode.

Para instalar as ferramentas de linha de comando Xcode, siga as instruções abaixo:

  • Inicie o Xcode em seu Mac.
  • Selecione Preferências no menu Xcode.
  • No painel Geral , clique em Downloads
  • Quando a janela Downloads abrir, clique na guia Componentes .
  • Clique no botão Instalar ao lado de Ferramentas da linha de comando.
  • Faça login usando sua conta de desenvolvedor da Apple para concluir o processo de instalação.
  • Se você estiver executando o macOS Catalina, poderá baixar a versão apropriada das Ferramentas de linha de comando para Xcode para a sua versão do Catalina aqui. Para macOS 10.15.3, o nome do arquivo deve ser Command_Line_Tools_for_Xcode_11.3.1.dmg. Depois de instalar os componentes corretos, você deve ser capaz de construir usando o node-gyp com sucesso. Se ocorrer uma falha na reconstrução do node-gyp no Mac, você precisará revisar esses componentes para descobrir o que deu errado.

    Como resolver o erro de reconstrução do Node-gyp

    Instalar um módulo do nó é um processo fácil. Você só precisa executar comandos específicos e está pronto para ir. Se encontrar falhas de reconstrução do node-gyp no Mac, você precisa voltar atrás para descobrir o que aconteceu.

    Mas antes de fazer isso, aqui estão algumas etapas básicas de solução de problemas que você deve tentar:

  • Reinicie seu computador para se livrar de quaisquer bugs temporários que possam estar afetando seu sistema.
  • Feche todos os aplicativos desnecessários para liberar reimgs de seu computador.
  • Desative temporariamente o software de segurança, como programas antivírus ou antimalware.
  • Limpe o sistema usando o aplicativo de reparo do Mac .
  • Se você ainda estou recebendo um erro de reconstrução do node-gyp, dê uma olhada nas soluções abaixo e veja qual funciona para você.

    Correção nº 1: verifique novamente os componentes necessários.

    A primeira coisa que você precisa fazer quando você receber um erro npm gyp no Mojave ou outra versão do macOS é verificar novamente os requisitos de instalação do node-gyp. Conforme mencionado na seção acima, você precisa de três componentes para que funcione, a saber:

    • Python
    • Xcode
    • Ferramentas de linha de comando Xcode

    Não se esqueça de instalar as linguagens C e C ++, que serão necessárias para compilar os módulos. Se algum deles estiver faltando ou não estiver funcionando, você definitivamente obterá o erro de falha de reconstrução. Reinstalar o componente ausente ou com defeito deve ajudar a corrigir o problema.

    Correção nº 2: atualize seus componentes Node-Gyp.

    Às vezes, instalar esses componentes não é suficiente. Você precisa se certificar de que está usando a versão correta para o seu macOS. Você pode escolher entre Python v2.7, v3.5, v3.6 ou v3.7, dependendo de qual versão funciona para você. Para o Xcode, você pode baixá-lo neste link. Você também precisa instalar a versão mais recente do node-gyp para o caso.

    Correção nº 3: Execute um teste ácido.

    Você pode verificar se as ferramentas de linha de comando Xcode em seu computador estão instaladas corretamente e funcionarão com node-gyp, você pode executar um teste ácido seguindo estas etapas:

  • No Xcode, execute este comando:
    / usr / sbin / pkgutil –packages | grep CL
  • Se você vir com.apple.pkg.CLTools_Executables conforme listado, não terá problemas. Se não estiver, este teste falhou e você precisa reinstalá-lo.
  • Execute o próximo comando:
    / usr / sbin / pkgutil –pkg-info com.apple.pkg. CLTools_Executables
  • Você deve ver a versão: 11.0.0 (ou posterior) conforme listado. Se não estiver, este teste também falhou e você precisa reinstalar.
  • Correção nº 4: mude para uma versão diferente do Python.

    Muitos desenvolvedores afetados notaram que a alteração da versão do Python usada para ambiente ativo ajudou a corrigir o problema para eles. Isso tem a ver com a compatibilidade entre a versão do macOS, a versão do Node e a versão do Python que você está usando. Alguns usuários descobriram que as versões mais antigas do Python, como a v2.7, são mais estáveis ​​do que as mais recentes. Experimente diferentes versões e veja qual funciona para você.

    Resumo

    Fazer a reconstrução do node-gyp falhar no Mac pode ser um incômodo e descobrir o que deu errado pode ser uma enorme perda de tempo. Portanto, se você encontrar esse erro, consulte o guia acima para saber exatamente o que fazer para corrigi-lo.


    Vídeo do youtube: Como lidar com a falha de reconstrução do Node-Gyp no Mac

    03, 2024