node-canvas遇到NODE_MODULE_VERSION不一致的问题

在使用node-canvas时,由于更换了node版本遇到

Error: The module '\?D: odejs ode_modulescanvasuildReleasecanvas.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 83. This version of Node.js requires
NODE_MODULE_VERSION 72. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).

解决方法:

  重新安装使用cnpm install canvas(不要使用npm或yarn安装,安装过几次都失败了)

  或者从 https://github.com/node-gfx/node-canvas-prebuilt/releases直接下载编译好的包,替换掉 buildRelease

说明:

  NODE_MODULE_VERSION 83对应nodejs版本为Node.js 14.X

  NODE_MODULE_VERSION 72对应nodejs版本为Node.js 12.X

NODE_MODULE_VERSION指的是Node.js的ABI(application binary interface)版本号,用来确定编译Node.js的C++库版本

nodejs同NODE_MODULE_VERSION对照

https://nodejs.org/en/download/releases/

原文地址:https://www.cnblogs.com/baby123/p/14282674.html