Невозможно npm установить серийный порт (или перестроить 'node-gyp') в автономном режиме - PullRequest
0 голосов
/ 26 июня 2019

Я пытаюсь установить пакет serialport (то есть зависимость oxygen-cli) во внутренней сети без доступа к Интернету во время npm install -g serialport, он пытается восстановить node-gyp.

Я получил ошибку и решил ее, а также другую ошибку и т. Д. Теперь я застрял с этой ошибкой:

Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
  serialport.cpp
  serialport_win.cpp
  win_delay_load_hook.cc
C:\Users\yehoshaa\AppData\Roaming\npm\node_modules\serialport\node_modules\nan\nan.h(24): fatal error C1083: Cannot open include file: 'node_version.h': No such file or directory (compiling source file ..\s
rc\serialport_win.cpp) [C:\Users\yehoshaa\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings\build\bindings.vcxproj]
C:\Users\yehoshaa\AppData\Roaming\npm\node_modules\serialport\node_modules\nan\nan.h(24): fatal error C1083: Cannot open include file: 'node_version.h': No such file or directory (compiling source file ..\s
rc\serialport.cpp) [C:\Users\yehoshaa\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings\build\bindings.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:189:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12)
gyp ERR! System Windows_NT 10.0.16299
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\yehoshaa\AppData\Roaming\npm\node_modules\serialport\node_modules\@serialport\bindings

enter image description here

Когда я пытаюсь запустить только node-gyp rebuild, я получаю эту ошибку:

ССЫЛКА: фатальная ошибка LNK1104: невозможно открыть файл 'C: \ Users \ myuser \ AppDate \ Roaming \ npm \ Release \ node.lib '[C: \ Users \ myuser \ AppData \ Roaming \ npm \ node_modules \ node-gyp \ build \ binding.vcxproj]

enter image description here

Я проверил файл binding.vcxproj и вижу эту строку:

<AdditionalDependencies>C:\Users\myuser\AppData\Roaming\npm\$(Configuration)\node.lib</AdditionalDependencies> 

Я попытался найти node.lib в моей машине, но я не нашел его.

ЕслиЯ удаляю эту строку из файла и запускаю node-gyp build, она работает, но поскольку я должен сделать rebuild файл, загруженный снова с проблемной строкой.

Мне удалось установить пакет, если я добавлю флаг--ignore-scripts но этоигнорировать все сценарии из всех зависимостей, это нормально?

Знаете, как решить эту проблему?или как установить sertialport без , чтобы сделать node-gyp rebuild (игнорировать только этот сценарий, но не все сценарии зависимостей)?

...