使用nw.gyp为nw.js构建serialport.js

时间:2015-11-03 18:56:22

标签: node-webkit nw.js node-serialport

我尝试使用 nw.js应用打包 serialport.js 。我很难为 nw.js 构建 serialport.js

我已在" app \ resource \ node_modules" 中使用npm安装 serialport.js

我还在全球安装 nw.gyp " npm install nw-gyp -g"

然后我将目录更改为" app \ resource \ node_modules \ serialport" ,其中 binding.gyp 位于此处,并尝试使用nw重建serialport -gyp " nw-gyp rebuild --target = 0.12.3"

这是我得到的错误: binding.gyp中未定义的变量module_name

enter image description here

任何想法我怎么能通过这个问题?

其他人似乎也有类似的问题: Serialport.js in Node-webkit (nw.js) on Win 7

我也看到了不同节点模块发生的同样错误: Building node-sqlite3 with nw-gyp

2 个答案:

答案 0 :(得分:1)

打开 node_modules / serialport / binding.gyp ,您需要进行一些更改......

<强>之前:

  "target_name": "action_after_build",
  "type": "none",
  "dependencies": [ "<(module_name)" ],
  "copies": [
    {
      "files": [ "<(PRODUCT_DIR)/<(module_name).node" ],
      "destination": "<(module_path)"

<强>后:

  "target_name": "action_after_build",
  "type": "none",
  "dependencies": [ "serialport" ],
  "copies": [
    {
      "files": [ "<(PRODUCT_DIR)/serialport.node" ],
      "destination": "."

并在 node_modules / serialport / package.json 中更改 module_path

"module_path": "./build/{configuration}/",

最后,运行 nw-gyp rebuild --target = 0.12.3

答案 1 :(得分:1)

降级 npm 有效!试一试

npm install npm@6 -g