NODE_MODULE_VERSION 46.此版本的Node.js需要NODE_MODULE_VERSION 64.请尝试重新编译或重新安装

时间:2018-06-11 19:46:26

标签: node.js npm version zeromq failed-installation

我正在尝试执行一个提供给我的节点应用程序,它应该可以正常工作。

我尝试过运行它,但我无法修复此错误:

seba@vps92941:~/services/drivetech$ node awto.js
/home/seba/services/drivetech/node_modules/bindings/bindings.js:83
        throw e
        ^

Error: The module '/home/seba/services/drivetech/node_modules/zmq/build/Release/zmq.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 46. This version of Node.js requires
NODE_MODULE_VERSION 64. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:731:18)
    at Module.load (internal/modules/cjs/loader.js:612:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:551:12)
    at Function.Module._load (internal/modules/cjs/loader.js:543:3)
    at Module.require (internal/modules/cjs/loader.js:650:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at bindings (/home/seba/services/drivetech/node_modules/bindings/bindings.js:76:44)
    at Object.<anonymous> (/home/seba/services/drivetech/node_modules/zmq/lib/index.js:6:30)
    at Module._compile (internal/modules/cjs/loader.js:702:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10)

我已经尝试过:

  • 重建模块(zmq)
  • 卸下并重新安装模块
  • 卸载所有内容(包括节点),重新安装
  • 将zmq重建为全局模块

我怎样摆脱这个?我不知道还能做什么。

这些是我的节点&amp; npm版本:

节点:v10.4.0
npm:3.5.2

1 个答案:

答案 0 :(得分:0)

bcrypt从节点8移到节点10时,我遇到了同样的问题,最后我通过手动调用node-pre-gyp解决了这个问题:

cd node_modules/<module_name>
node-pre-gyp rebuild

这迫使node-pre-gyp工具(node用于编译二进制模块的工具)采用正确版本的node。

也许在执行之前重新安装它,以确保您具有正确的node-pre-gyp版本

npm i -g node-pre-gyp

希望这会有所帮助