Как справиться с ошибкой восстановления Node-Gyp на Mac

node-gyp — это отличный инструмент, который позволяет разработчикам компилировать собственные дополнительные модули Node на нескольких платформах. Он очень популярен и широко используется сегодня, поэтому его часто включают в качестве зависимости для большинства пакетов NPM.

В большинстве операционных систем node-gyp не вызывает никаких проблем. Установка node-gyp и остальных пакетов NPM обычно проходит гладко и эффективно. Однако это касается не всех пользователей. Некоторые разработчики сообщали о проблемах с перестроением node-gyp в macOS, что приводило к не самым лучшим результатам для затронутых разработчиков. Эта ошибка также приводит к множеству подводных камней и допускает множество причин, по которым что-то может пойти не так.

Эта проблема не является чем-то новым. Разработчики, использующие более старые версии macOS, уже сталкивались с этой ошибкой. С выпуском macOS Catalina несколько разработчиков также сообщили о сбое восстановления node-gyp на Mac после обновления до новой версии macOS. Эта ошибка помешала разработчикам установить необходимые им пакеты node-gyp.

Если вы столкнулись с этой ошибкой, вы поймете, насколько неприятным может быть сбой перестроения node-gyp на Mac. Вы не сможете продолжить разработку своего приложения или программного обеспечения, пока не исправите эту ошибку. К счастью, мы сделали всю работу за вас. Если вы обнаружите, что из-за этой ошибки невозможно продолжить работу над проектом, вы можете попробовать любое из перечисленных ниже решений, чтобы устранить ее.

Что такое Node-Gyp?

node-gyp — это инструмент, используемый для компиляции надстроек Node.js, которые представляют собой нативные модули Node.js, написанные на C или C++. Эти модули должны быть скомпилированы на вашем компьютере с помощью такого инструмента, как node-gyp. Node-gyp работает на Windows, macOS и Linux.

Node-gyp, как правило, прост в использовании благодаря единообразному интерфейсу. Вы также можете использовать одни и те же команды для сборки или перестройки модуля на разных платформах. Node-gyp также поддерживает несколько целевых версий Node.

Если вы получаете ошибку npm gyp в Mojave или более ранних версиях macOS, вам необходимо еще раз проверить требования для работы node-gyp.

Вот требования, которые необходимо установить для работы node-gyp на macOS:

  • Python v2.7, v3.5, v3.6 или v3.7
  • Xcode — утилита, позволяющая разработчикам создавать приложения для macOS, iOS и iPadOS.

Вам также необходимо установить правильную версию инструментов командной строки Xcode, которые являются частью набора инструментов и библиотек для разработки программного обеспечения XCode.

Чтобы установить инструменты командной строки Xcode, следуйте приведенным ниже инструкциям:

  1. Запустите Xcode на вашем Mac.
  2. Выберите «Настройки» в меню Xcode.
  3. На панели «Общие» нажмите «Загрузки».
  4. Когда откроется окно «Загрузки», щелкните вкладку «Компоненты».
  5. Нажмите кнопку «Установить» рядом с «Инструменты командной строки».
  6. Войдите в систему, используя свою учетную запись Apple Developer, чтобы завершить процесс установки.

Если вы используете macOS Catalina, вы можете загрузить соответствующую версию инструментов командной строки для Xcode для вашей версии Catalina с здесь. Для macOS 10.15.3 имя файла должно быть Command_Line_Tools_for_Xcode_11.3.1.dmg. После того, как вы установили правильные компоненты, вы сможете успешно выполнить сборку с использованием node-gyp. Если вы столкнулись со сбоем восстановления node-gyp на Mac, вам необходимо просмотреть эти компоненты, чтобы выяснить, что пошло не так.

Как решить ошибку перестроения Node-gyp

Установка модуля узла — простой процесс. Вам просто нужно запустить определенные команды, и все будет готово. Если вы столкнулись с ошибкой восстановления node-gyp на Mac, вам нужно сделать шаг назад, чтобы выяснить, что произошло.

Но прежде чем вы это сделаете, вот несколько основных шагов по устранению неполадок, которые вы должны попробовать:

  1. Перезагрузите компьютер, чтобы избавиться от любых временных ошибок, которые могут повлиять на вашу систему.
  2. Закройте все ненужные приложения, чтобы освободить ресурсы компьютера.
  3. Временно отключите защитное программное обеспечение, такое как антивирус или программы защиты от вредоносных программ.
  4. Очистите свою систему с помощью приложения для восстановления Mac.

Если вы по-прежнему получаете сообщение об ошибке перестроения node-gyp, взгляните на приведенные ниже решения и посмотрите, какое из них вам подходит.

Исправление № 1. Дважды проверьте необходимые компоненты.

Первое, что вам нужно сделать, когда вы получаете ошибку npm gyp в Mojave или другой версии macOS, — это перепроверить требования к установке node-gyp. Как упоминалось в разделе выше, для его работы вам понадобятся три компонента, а именно:

  • питон
  • Xкод
  • Инструменты командной строки Xcode

Не забудьте установить языки C и C++, которые потребуются для компиляции модулей. Если какой-либо из них отсутствует или не работает, вы обязательно получите сообщение об ошибке перестроения. Переустановка отсутствующего или неисправного компонента должна помочь устранить проблему.

Исправление № 2: обновите компоненты Node-Gyp.

Иногда установки этих компонентов недостаточно. Вы должны убедиться, что используете правильную версию для своей macOS. Вы можете выбирать между Python v2.7, v3.5, v3.6 или v3.7, в зависимости от того, какая версия вам подходит. Для Xcode вы можете скачать его с этого ссылка на сайт. Также необходимо установить последняя версия node-gyp на всякий случай.

Исправление № 3: проведите кислотный тест.

Вы можете проверить, правильно ли установлены инструменты командной строки Xcode на вашем компьютере и будут ли они работать с node-gyp, вы можете запустить кислотный тест, выполнив следующие действия:

  1. В Xcode выполните эту команду:
    /usr/sbin/pkgutil – пакеты | grep CL
  2. Если вы видите com.apple.pkg.CLTools_Executables в списке, у вас не будет проблем. Если это не так, то этот тест не прошел, и вам нужно переустановить его.
  3. Запустите следующую команду:
    /usr/sbin/pkgutil –pkg-info com.apple.pkg.CLTools_Executables
  4. Вы должны увидеть версию: 11.0.0 (или более позднюю), как указано в списке. Если это не так, то этот тест также не прошел, и вам нужно переустановить.

Исправление № 4: переключитесь на другую версию Python.

Многие затронутые разработчики отметили, что изменение версии Python, используемой для активной среды, помогло им решить проблему. Это как-то связано с совместимостью между версией macOS, версией Node и версией Python, которую вы используете. Некоторые пользователи обнаружили, что более старые версии Python, такие как v2.7, более стабильны, чем новые. Поэкспериментируйте с разными версиями и посмотрите, какая из них работает для вас.

Резюме

Сбой восстановления node-gyp на Mac может быть проблемой, а выяснение того, что пошло не так, может быть огромной тратой времени. Поэтому, если вы столкнулись с этой ошибкой, обратитесь к руководству выше, чтобы точно знать, что делать, чтобы исправить ошибку.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *