Jak radzić sobie z niepowodzeniem przebudowy Node-Gyp na Macu? (04.24.24)

node-gyp to sprytne narzędzie, które pozwala programistom kompilować natywne moduły dodatkowe Node na wielu platformach. Jest dziś bardzo popularny i szeroko stosowany, więc często jest dołączany jako zależność dla większości pakietów NPM.

W większości systemów operacyjnych node-gyp nie powoduje żadnego problemu. Instalacja node-gyp i pozostałych pakietów NPM zwykle działa płynnie i wydajnie. Jednak nie dotyczy to wszystkich użytkowników. Niektórzy programiści zgłaszali problemy z odbudową node-gyp na macOS, co skutkowało mniej niż gwiezdnym doświadczeniem dla programistów, których dotyczy problem. Ten błąd prowadzi również do wielu pułapek i pozwala na wiele sposobów, aby coś poszło nie tak.

Ten problem nie jest niczym nowym. Programiści korzystający ze starszych wersji systemu macOS już wcześniej napotkali ten błąd. Wraz z wydaniem macOS Catalina kilku programistów zgłosiło również niepowodzenie przebudowy node-gyp na Macu po aktualizacji do nowej wersji macOS. Ten błąd uniemożliwił programistom zainstalowanie potrzebnych pakietów node-gyp.

Jeśli napotkałeś ten błąd, zrozumiesz, jak frustrujące może być niepowodzenie odbudowy node-gyp na Macu. Nie możesz kontynuować rozwoju aplikacji lub oprogramowania, dopóki ten błąd nie zostanie naprawiony. Na szczęście wykonaliśmy za Ciebie całą pracę. Jeśli z powodu tego błędu nie możesz przejść do przodu z projektem, możesz wypróbować dowolne z poniższych rozwiązań, aby go rozwiązać.

Co to jest Node-Gyp?

node-gyp to narzędzie używane do kompilowania dodatków Node.js, które są natywnymi modułami Node.js napisanymi w C lub C++. Te moduły muszą być skompilowane na twoim komputerze przy użyciu narzędzia takiego jak node-gyp. Node-gyp działa w systemach Windows, macOS i Linux.

Node-gyp jest ogólnie łatwy w użyciu ze względu na spójny interfejs. Możesz również użyć tych samych poleceń, aby zbudować lub przebudować swój moduł na różnych platformach. Node-gyp obsługuje również wiele docelowych wersji Node.

Jeśli otrzymujesz błąd npm gyp w Mojave lub wcześniejszych wersjach systemu macOS, musisz dokładnie sprawdzić wymagania dotyczące działania node-gyp.

Oto wymagania, które należy zainstalować, aby node-gyp działał w systemie macOS:

  • Python v2.7, v3.5, v3.6 lub v3. 7
  • Xcode – narzędzie, które pozwala programistom tworzyć aplikacje na macOS, iOS i iPadOS.

Musisz również zainstalować poprawną wersję wiersza poleceń Xcode Narzędzia, które są częścią pakietu narzędzi programistycznych i bibliotek XCode.

Aby zainstalować narzędzia wiersza poleceń Xcode, postępuj zgodnie z poniższymi instrukcjami:

  • Uruchom Xcode na komputerze Mac.
  • Wybierz Preferencjez menu Xcode.
  • W panelu Ogólne kliknij Pobrane.
  • Gdy otworzy się okno pobierania, kliknij kartę Komponenty .
  • Kliknij przycisk Zainstaluj obok Narzędzi wiersza poleceń.
  • Zaloguj się przy użyciu swojego konta Apple Developer, aby zakończyć proces instalacji.
  • Jeśli używasz systemu macOS Catalina, możesz pobrać odpowiednią wersję Narzędzi wiersza poleceń dla Xcode dla swojej wersji Catalina stąd. W przypadku systemu macOS 10.15.3 nazwa pliku powinna brzmieć Command_Line_Tools_for_Xcode_11.3.1.dmg. Po zainstalowaniu odpowiednich komponentów powinieneś być w stanie pomyślnie skompilować przy użyciu node-gyp. Jeśli przebudowa węzła typu node-gyp na Macu nie powiedzie się, musisz przejrzeć te komponenty, aby dowiedzieć się, co poszło nie tak.

    Jak rozwiązać błąd przebudowy węzła typu node-gyp

    Instalacja modułu węzła jest łatwym procesem. Musisz tylko uruchomić określone polecenia i powinieneś być gotowy. Jeśli napotkasz błąd przebudowy node-gyp na Macu, musisz się cofnąć, aby dowiedzieć się, co się stało.

    Ale zanim to zrobisz, oto kilka podstawowych kroków rozwiązywania problemów, które powinieneś wypróbować:

  • Uruchom ponownie komputer, aby pozbyć się tymczasowych błędów, które mogą mieć wpływ na system.
  • Zamknij wszystkie niepotrzebne aplikacje, aby zwolnić komputer.
  • Tymczasowo wyłącz oprogramowanie zabezpieczające, takie jak programy antywirusowe lub chroniące przed złośliwym oprogramowaniem.
  • Wyczyść system za pomocą aplikacji do naprawy komputerów Mac.
  • Jeśli nadal pojawia się błąd przebudowy węzła node-gyp, spójrz na poniższe rozwiązania i zobacz, które z nich działa dla Ciebie.

    Poprawka nr 1: dwukrotnie sprawdź wymagane składniki.

    Pierwszą rzeczą, którą musisz zrobić, gdy pojawi się błąd npm gyp na Mojave lub innej wersji macOS, należy dwukrotnie sprawdzić wymagania instalacyjne węzła-gyp. Jak wspomniano w powyższej sekcji, do jego działania potrzebne są trzy komponenty, a mianowicie:

    • Python
    • Xcode
    • Narzędzia wiersza poleceń Xcode

    Nie zapomnij zainstalować języków C i C++, które będą potrzebne do kompilacji modułów. Jeśli któregoś z nich brakuje lub nie działa, na pewno otrzymasz błąd nieudanej przebudowy. Ponowna instalacja brakującego lub wadliwego komponentu powinna pomóc w rozwiązaniu problemu.

    Poprawka nr 2: Zaktualizuj komponenty Node-Gyp.

    Czasami zainstalowanie tych komponentów nie wystarczy. Musisz upewnić się, że używasz odpowiedniej wersji dla swojego macOS. Możesz wybrać między Pythonem v2.7, v3.5, v3.6 lub v3.7, w zależności od tego, która wersja Ci odpowiada. W przypadku Xcode możesz go pobrać z tego linku. Na wszelki wypadek musisz również zainstalować najnowszą wersję node-gyp.

    Poprawka nr 3: Wykonaj test kwasowości.

    Możesz sprawdzić, czy narzędzia wiersza poleceń Xcode na komputerze są prawidłowo zainstalowane i będą działać z node-gyp, możesz uruchomić test kwasu, wykonując następujące kroki:

  • W Xcode uruchom to polecenie:
    /usr/sbin/pkgutil –packages | grep CL
  • Jeśli widzisz com.apple.pkg.CLTools_Executables na liście, to nie będziesz mieć problemu. Jeśli tak nie jest, oznacza to, że test się nie powiódł i należy go ponownie zainstalować.
  • Uruchom następne polecenie:
    /usr/sbin/pkgutil –pkg-info com.apple.pkg. CLTools_Executables
  • Powinieneś zobaczyć wersję: 11.0.0 (lub nowszą) zgodnie z listą. Jeśli tak nie jest, oznacza to, że ten test również się nie powiódł i należy ponownie zainstalować.
  • Poprawka nr 4: Przełącz się na inną wersję Pythona.

    Wielu programistów, których dotyczy problem, zauważyło, że zmiana wersji Pythona używanej do aktywne środowisko pomogło im rozwiązać problem. Ma to coś wspólnego z kompatybilnością między wersją macOS, wersją Node i wersją Pythona, której używasz. Niektórzy użytkownicy stwierdzili, że starsze wersje Pythona, takie jak v2.7, są bardziej stabilne niż nowsze. Eksperymentuj z różnymi wersjami i zobacz, która z nich działa dla Ciebie.

    Podsumowanie

    Niepowodzenie przebudowy node-gyp na Macu może być kłopotliwe, a ustalenie, co poszło nie tak, może być ogromną stratą czasu. Jeśli więc napotkasz ten błąd, zapoznaj się z powyższym przewodnikiem, aby dokładnie wiedzieć, co zrobić, aby go naprawić.


    Wideo YouTube.: Jak radzić sobie z niepowodzeniem przebudowy Node-Gyp na Macu?

    04, 2024