我正在尝试安装我们的Node serial小部件,它允许PHP服务的站点与本地机器的串行端口和我们的远程服务器(与MariaDB)通信。我正在尝试安装的网站位于德国(但在我们的域名中,所以我可以看到它们就好像它们是本地的)。虽然我在西雅图地区的机器上工作时滞后,但我可以通过VNC Viewer从这里做任何我需要的事情。
我们已成功将此软件部署到我们当地(西雅图地区)的大约十几台服务计算机上,但它们都是64位Win7 Pro计算机,这些计算机是Windows的默认英文版本。这台机器是使用英语语言包的32位德语版Win7 Pro。我不知道这是否相关,但只有两个变量似乎是32位&德国Windows。我们已成功使用32位VM完成测试安装,因此它似乎归结为德国Windows,除非我遗漏了其他内容。
这就是我所做的:
我已成功安装:
Node.js 6.9.5
NPM 3.10.10
Python 2.7.13
Windows构建工具来自说明found here。
VS 2015的Visual Studio构建工具(也尝试使用VS 2013)
节点gyp
Node pre-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
> serialport@4.0.7 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 serialport@4.0.7 and node@6.9.5 (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 sbeserialwidget@0.0.1 No description
npm WARN sbeserialwidget@0.0.1 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! serialport@4.0.7 install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the serialport@4.0.7 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 :(得分:0)
这并没有真正得到解决。 Please see accompanying discussion on Github with the Serialport guys.下面的每个讨论点都有链接。即使使用链接信息,仍然需要花费几个小时的时间才能安装和运行我们的软件。
基本上归结为:
也许这会帮助那些需要插入串口插件的32位Windows安装遇到类似问题的其他人。