2017-03-10 25 views
5

pliki do pobrania węzła Gyp następujące pliki z Internetu podczas instalacji i budynku natywnych modułów takich jak iconv, ref, ffi, itp:
https://nodejs.org/download/release/v6.10.0/node-v6.10.0-headers.tar.gz
https://nodejs.org/download/release/v6.10.0/win-x86/node.lib
https://nodejs.org/download/release/v6.10.0/win-x64/node.lib
https://nodejs.org/download/release/v6.10.0/SHASUMS256.txtJak zapobiec pobieraniu przez węzeł-gyp plików node-headers.tar.gz i node.lib z Internetu?

Jak zrobić węzeł-Gyp używać tych plików z folderów lokalnych, a nie z Internetu?

Znalazłem następujące rozwiązanie:
1. Pobierz https://nodejs.org/download/release/v6.10.0/node-v6.10.0-headers.tar.gz
2. Rozpakuj go do jakiegoś folderu lokalnego.
3. Utwórz folder Release w tym folderze lokalnym.
4. Pobierz plik https://nodejs.org/dist/v6.10.0/win-x64/node.lib do folderu Release.
5. Zestaw nodedir nieruchomość w .npmrc który skieruje do folderu z nagłówkami rozpakowanych:
nodedir = D: \ tools \ node_src \ node-v6.10.0-nagłówki

Teraz npm instaluje pakiety i-węzłów Gyp buduje rodzime pakiety bez pobierania nagłówków i bibliotek węzłów z Internetu.
Czy to właściwe podejście?

Nie mogę znaleźć w dokumentacji, którą powinienem pobrać node.lib i umieścić go w katalogu Release.
Postanowiłem zrobić to po przeanalizowaniu śladów węzła-gyp i kodu węzła-gyp.
Czy można ustawić lokalizację pliku node.lib za pomocą właściwości npm_config_xxx?

+0

Ten post tylko mnie uratował. Dziękuję Ci. – SamF

+0

Po prostu nie zapomnij o tym, gdy zdecydujesz się zaktualizować wersję węzła. Spędziłem pół godziny uderzając głową o stół, ponieważ '>> npm rebuild-sass' nie zadziałało: D – Jodo

Odpowiedz