Показать сообщение отдельно
  #1 (permalink)  
Старый 10.03.2017, 18:39
Новичок на форуме
Отправить личное сообщение для Vlad2017 Посмотреть профиль Найти все сообщения от Vlad2017
 
Регистрация: 10.03.2017
Сообщений: 5

Как сделать, чтобы node-gyp не скачивал node-headers.tar.gz и node.lib из интернета?
node-gyp скачивает из интернета такие файлы во время инсталяции нативных npm модулей типа iconv, ref, etc:
https://nodejs.org/download/release/...headers.tar.gz
https://nodejs.org/download/release/...n-x86/node.lib
https://nodejs.org/download/release/...n-x64/node.lib
https://nodejs.org/download/release/...SHASUMS256.txt

Как сделать так, чтобы node-gyp брал эти файлы из локальной папки?

Пока я решил эту проблему вот так так:
1. Скачал https://nodejs.org/download/release/...headers.tar.gz
2. Распаковал этот архив в локальную папку.
3. В этой новой папке создал папку Release.
4. Скачал в папку Release файл https://nodejs.org/dist/v6.10.0/win-x64/node.lib
5. В .npmrc добавил свойство nodedir, которое указывает на папку node-v6.10.0-headers:
nodedir=D:\tools\node_src\node-v6.10.0-headers

Теперь npm инсталит пакеты и node-gyp билдит нативные пакеты без вытаскивания дополнительных нодовских файлов из интернета.
Это правильный подход?
Или надо делать как-то по другому?

Меня беспокоит, что нигде в документации не написано, что надо скачивать node.lib и класть его в папку Release.
Я сделал это на основании анализа трейсов и кода.
Может более правильно конфигурить путь к файлу node.lib через какие-то свойства npm_config_xxx?
Ответить с цитированием