2017-02-07 9 views
0

Я пытаюсь установить наш последовательный виджет Node, который позволяет обслуживаемому сайту PHP разговаривать как с последовательными портами локальной машины, так и с нашим удаленным сервером (с MariaDB). Сайт, который я пытаюсь установить, находится в Германии (но находится в нашем домене, поэтому я могу видеть их так, как если бы они были локальными). Пока есть время, когда я работаю на машине из района Сиэтла, я могу делать все, что мне нужно, от VNC Viewer.Не удается установить Node Serialport на немецкий Win7

Мы успешно развернули это программное обеспечение примерно до десятка наших локальных (Сиэтлских) сервисных компьютеров, но все они - 64-разрядные машины Win7 Pro, которые по умолчанию являются английскими версиями Windows. Эта машина представляет собой 32-разрядную немецкую сборку Win7 Pro с использованием пакета на английском языке. Я не знаю, подходит ли это, но единственные две переменные кажутся 32-разрядными & немецкой Windows. Мы успешно выполнили тестовые установки с использованием 32-битной виртуальной машины, поэтому, похоже, она работает с немецкой Windows, если я не пропущу что-то еще.

Вот что я сделал:

Я успешно установил:

  • Node.js 6.9.5

  • НПМ 3.10.10

  • Python 2.7 .13

  • Инструменты для сборки Windows из инструкции found here.

  • Visual Studio создавать инструменты для VS 2015 (также попытался с VS 2013)

  • Узел Gyp

  • Узел предварительного Gyp

Затем я попытался сделать эти configuration change S:

$ npm config set msvs_version 2015 
$ set VCTargetsPath=C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140 

Без изменений к ошибке.

Вот наш package.json:

{ 
    "name": "sbeserialwidget", 
    "version": "0.0.1", 
    "description": "", 
    "main": "server.js", 
    "directories": { 
    "test": "test" 
    }, 
    "scripts": { 
    "test": "node_modules\\.bin\\mocha --reporter spec" 
    }, 
    "license": "ISC", 
    "dependencies": { 
    "chai": "^3.5.0", 
    "dns": "^0.2.2", 
    "express": "^4.14.0", 
    "fs-extra": "^0.30.0", 
    "mocha": "^3.0.2", 
    "moment": "^2.15.1", 
    "os": "^0.1.1", 
    "request": "^2.74.0", 
    "serialport": "^4.0.1", 
    "socket.io": "^1.4.8", 
    "username": "^2.2.2" 
    } 
} 

Я также попытался установить serialport.js автономно, с теми же ошибками. Ни одна из наших других зависимостей не кажется проблематичной, но без serialport.js программное обеспечение бесполезно.

Ничего из этого не сработало, и я все еще получаю ошибки, описанные ниже (извините, это очень долго). Первоначальная ошибка, кажется, на 5-й строке текста:

node-pre-gyp ERR! Tried to download(undefined): https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v48-win32-ia32.tar.gz *:

C:\Program Files\Sea-Bird\sbSerialWidget>npm install 

> [email protected] install C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport 
> node-pre-gyp install --fallback-to-build 

node-pre-gyp ERR! Tried to download(undefined): https://github.com/EmergingTechnologyAdvisors/node-serialport/releases/download/4.0.7/serialport-v4.0.7-node-v48-win32-ia32.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v48 ABI) (falling back to source compile with node-gyp) 

C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" clean) else (node "" clean) 

C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" configure --fallback-to-build "--module=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release\serialport.node" --module_name=serialport "--module_path=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release" --python=C:\Users\SeabirdUSA\.windows-build-tools\python27\python.exe --msvs_version=2015)else (node "" configure --fallback-to-build"--module=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release\serialport.node" --module_name=serialport "--module_path=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release" --python=C:\Users\SeabirdUSA\.windows-build-tools\python27\python.exe --msvs_version=2015) 
gyp WARN install got an error, rolling back install 
gyp ERR! configure error 
gyp ERR! stack Error: self signed certificate in certificate chain 
gyp ERR! stack  at Error (native) 
gyp ERR! stack  at TLSSocket.<anonymous> (_tls_wrap.js:1079:38) 
gyp ERR! stack  at emitNone (events.js:86:13) 
gyp ERR! stack  at TLSSocket.emit (events.js:185:7) 
gyp ERR! stack  at TLSSocket._finishInit (_tls_wrap.js:603:8) 
gyp ERR! stack  at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:433:38) 
gyp ERR! System Windows_NT 6.1.7601 
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--module=C:\\Program Files\\Sea-Bird\\sbSerialWidget\\node_modules\\serialport\\build\\Release\\serialport.node" "--module_name=serialport" "--module_path=C:\\Program Files\\Sea-Bird\\sbSerialWidget\\node_modules\\serialport\\build\\Release" "--python=C:\\Users\\SeabirdUSA\\.windows-build-tools\\python27\\python.exe" "--msvs_version=2015" 
gyp ERR! cwd C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport 
gyp ERR! node -v v6.9.5 
gyp ERR! node-gyp -v v3.4.0 
gyp ERR! not ok 
node-pre-gyp ERR! build error 
node-pre-gyp ERR! stack Error: Failed to execute 'node-gyp.cmd configure --fallback-to-build --module=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release\serialport.node --module_name=serialport --module_path=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release --python=C:\Users\SeabirdUSA\.windows-build-tools\python27\python.exe --msvs_version=2015' (1) 
node-pre-gyp ERR! stack  at ChildProcess.<anonymous> (C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\node_modules\node-pre-gyp\lib\util\com 
pile.js:83:29) 
node-pre-gyp ERR! stack  at emitTwo (events.js:106:13) 
node-pre-gyp ERR! stack  at ChildProcess.emit (events.js:191:7) 
node-pre-gyp ERR! stack  at maybeClose (internal/child_process.js:877:16) 
node-pre-gyp ERR! stack  at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5) 
node-pre-gyp ERR! System Windows_NT 6.1.7601 
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\Sea-Bird\\sbSerialWidget\\node_modules\\serialport\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" 
node-pre-gyp ERR! cwd C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport 
node-pre-gyp ERR! node -v v6.9.5 
node-pre-gyp ERR! node-pre-gyp -v v0.6.32 
node-pre-gyp ERR! not ok 
Failed to execute 'node-gyp.cmd configure --fallback-to-build --module=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release\serialport.node --module_name=serialport --module_path=C:\Program Files\Sea-Bird\sbSerialWidget\node_modules\serialport\build\Release --python=C:\Users\SeabirdUSA\.windows-build-tools\python27\python.exe --msvs_version=2015' (1) 
npm WARN [email protected] No description 
npm WARN [email protected] No repository field. 
npm ERR! Windows_NT 6.1.7601 
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" 
npm ERR! node v6.9.5 
npm ERR! npm v3.10.10 
npm ERR! code ELIFECYCLE 

npm ERR! [email protected] install: `node-pre-gyp install --fallback-to-build` 
npm ERR! Exit status 1 
npm ERR! 
npm ERR! Failed at the [email protected] install script 'node-pre-gyp install --fallback-to-build'. 
npm ERR! Make sure you have the latest version of node.js and npm installed. 
npm ERR! If you do, this is most likely a problem with the serialport package, 
npm ERR! not with npm itself. 
npm ERR! Tell the author that this fails on your system: 
npm ERR!  node-pre-gyp install --fallback-to-build 
npm ERR! You can get information on how to open an issue for this project with: 
npm ERR!  npm bugs serialport 
npm ERR! Or if that isn't available, you can get their info via: 
npm ERR!  npm owner ls serialport 
npm ERR! There is likely additional logging output above. 

npm ERR! Please include the following file with any support request: 
npm ERR!  C:\Program Files\Sea-Bird\sbSerialWidget\npm-debug.log 

ответ

0

Это на самом деле не была решена так, как работал вокруг. Please see accompanying discussion on Github with the Serialport guys. Здесь есть ссылки для каждого из обсуждаемых ниже пунктов. Для выполнения нашего программного обеспечения и его функциональности даже со связанной информацией по-прежнему требуется несколько часов.

В основном это сводится к:

  • скачать и установить соответствующую версию Node.js.
  • Сделайте некоторую конфигурацию до npm
  • Установите и постройте все зависимости для node-gyp вместе с Python 2.7x & Инструменты для создания Windows.
  • Установите и постройте все зависимости для узла-pre-gyp.

Может быть, это поможет кто-то другой, кто столкнулся с подобными проблемами с 32-разрядной ОС Windows устанавливает, что требует SerialPort заглушки.