11

I am trying to use the NPM version of canvas as well as an NPM module to merge images. However it Canvas seems to not want to load. I get an error everytime I require it and run the script.

This answer didn't really seem to help as I tried all of the solutions but it seemed to be talking about bcrypt and electron.

I am running node v12.16.3 with npm version 6.14.10 and my canvas version in my package.json is ^2.6.1

My complete error message:

Error: The module '\\?\C:\...\node_modules\canvas\build\Release\canvas.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 88. 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`).
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1183:18)
    at Module.load (internal/modules/cjs/loader.js:977:32)
    at Function.Module._load (internal/modules/cjs/loader.js:877:14)
    at Module.require (internal/modules/cjs/loader.js:1019:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\...\node_modules\canvas\lib\bindings.js:3:18)
    at Module._compile (internal/modules/cjs/loader.js:1133:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
    at Module.load (internal/modules/cjs/loader.js:977:32)
    at Function.Module._load (internal/modules/cjs/loader.js:877:14)
    at Module.require (internal/modules/cjs/loader.js:1019:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\...\node_modules\canvas\lib\canvas.js:9:18)
    at Module._compile (internal/modules/cjs/loader.js:1133:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
    at Module.load (internal/modules/cjs/loader.js:977:32)
Ortovox
  • 382
  • 10
  • 18
  • 1
    Have you tried `npm rebuild` or `npm install`? – tkausl Jan 13 '21 at 15:26
  • Have yout ried to compile it on your system? -> https://www.npmjs.com/package/canvas#compiling – Marc Jan 13 '21 at 15:28
  • I tried deleting my `package-lock.json` and `node-modules` and then running `npm install` but nothing and `npm rebuild` seems to fail? – Ortovox Jan 13 '21 at 15:30
  • Does this answer your question? [Node - was compiled against a different Node.js version using NODE\_MODULE\_VERSION 72](https://stackoverflow.com/questions/63712163/node-was-compiled-against-a-different-node-js-version-using-node-module-versio) – Vega Jun 11 '21 at 13:01

1 Answers1

18

Came across this when looking for the same error and reinstalling/deleting my node_modules folder did nothing. Using npm rebuild canvas --update-binary worked for me however.

I found this solution at a different answer for a similar error at this question, just changed it to fit canvas. Leaving this incase someone else comes across this too.

Kotas
  • 229
  • 2
  • 6
  • 1
    When you come across a question that you know is already have been posted on SO, flag it as duplicate, instead of repeating answers and linking – Vega Jun 11 '21 at 13:03