2

I'm trying to deploy in Heroku and I get the following build log:

-----> Node.js app detected
-----> Creating runtime environment
       NPM_CONFIG_LOGLEVEL=error
       NPM_CONFIG_PRODUCTION=true
       NODE_ENV=production
       NODE_MODULES_CACHE=true
-----> Installing binaries
       engines.node (package.json):  unspecified
       engines.npm (package.json):   unspecified (use default)

       Resolving node version (latest stable) via semver.io...
       Downloading and installing node 5.11.1...
       Using default npm version: 3.8.6
-----> Restoring cache
       Skipping cache restore (new runtime signature)
-----> Building dependencies
       Installing node modules (package.json)

       > [email protected] install /tmp/build_dea09358fecbaab814f27f093c94d85b/node_modules/canvas
       > node-gyp rebuild
       make: Entering directory `/tmp/build_dea09358fecbaab814f27f093c94d85b/node_modules/canvas/build'
       SOLINK_MODULE(target) Release/obj.target/canvas-postbuild.node
       COPY Release/canvas-postbuild.node
       CXX(target) Release/obj.target/canvas/src/Canvas.o
       CXX(target) Release/obj.target/canvas/src/CanvasGradient.o
       CXX(target) Release/obj.target/canvas/src/CanvasPattern.o
       In file included from ../src/CanvasPattern.cc:9:0:

       ../src/Image.h:19:21: fatal error: gif_lib.h: No such file or directory

       #include <gif_lib.h>
       ^
       compilation terminated.
       make: *** [Release/obj.target/canvas/src/CanvasPattern.o] Error 1
       make: Leaving directory `/tmp/build_dea09358fecbaab814f27f093c94d85b/node_modules/canvas/build'
       gyp ERR! build error
       gyp ERR! stack Error: `make` failed with exit code: 2
       gyp ERR! stack     at ChildProcess.onExit (/tmp/build_dea09358fecbaab814f27f093c94d85b/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
       gyp ERR! stack     at emitTwo (events.js:100:13)
       gyp ERR! stack     at ChildProcess.emit (events.js:185:7)
       gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
       gyp ERR! System Linux 3.13.0-95-generic
       gyp ERR! command "/tmp/build_dea09358fecbaab814f27f093c94d85b/.heroku/node/bin/node" "/tmp/build_dea09358fecbaab814f27f093c94d85b/.heroku/node/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
       gyp ERR! cwd /tmp/build_dea09358fecbaab814f27f093c94d85b/node_modules/canvas
       gyp ERR! node -v v5.11.1
       gyp ERR! node-gyp -v v3.3.1
       gyp ERR! not ok
       [email protected] /tmp/build_dea09358fecbaab814f27f093c94d85b
       ├─┬ [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ ├── [email protected]
       │ │ ├── [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ └── [email protected]
       │ └─┬ [email protected]
       │   ├── [email protected]
       │   └─┬ [email protected]
       │     └── [email protected]
       ├─┬ [email protected]
       │ ├── [email protected]
       │ └── [email protected]
       ├─┬ [email protected]
       │ └── [email protected]
       ├── [email protected]
       ├─┬ [email protected]
       │ ├─┬ [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ ├── [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ ├── [email protected]
       │ │ ├── [email protected]
       │ │ ├── [email protected]
       │ │ └── [email protected]
       │ ├─┬ [email protected]
       │ │ └─┬ [email protected]
       │ │   ├── [email protected]
       │ │   └── [email protected]
       │ ├── [email protected]
       │ └── [email protected]
       ├─┬ [email protected]
       │ └─┬ [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├─┬ [email protected]
       │   │ └── [email protected]
       │   ├── [email protected]
       │   ├─┬ [email protected]
       │   │ └── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├─┬ [email protected]
       │   │ └── [email protected]
       │   ├─┬ [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ ├── [email protected]
       │   │ │ ├── [email protected]
       │   │ │ ├─┬ [email protected]
       │   │ │ │ └── [email protected]
       │   │ │ ├── [email protected]
       │   │ │ └── [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ └── [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ ├── [email protected]
       │   │ │ ├─┬ [email protected]
       │   │ │ │ └── [email protected]
       │   │ │ ├── [email protected]
       │   │ │ └── [email protected]
       │   │ └─┬ [email protected]
       │   │   └── [email protected]
       │   ├─┬ [email protected]
       │   │ ├── [email protected]
       │   │ ├── [email protected]
       │   │ ├── [email protected]
       │   │ └── [email protected]
       │   ├─┬ [email protected]
       │   │ ├── [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ ├── [email protected]
       │   │ │ ├── [email protected]
       │   │ │ └── [email protected]
       │   │ └─┬ [email protected]
       │   │   ├── [email protected]
       │   │   ├── [email protected]
       │   │   ├── [email protected]
       │   │   ├─┬ [email protected]
       │   │   │ └── [email protected]
       │   │   ├── [email protected]
       │   │   ├─┬ [email protected]
       │   │   │ └── [email protected]
       │   │   ├── [email protected]
       │   │   ├── [email protected]
       │   │   └── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   └── [email protected]
       ├─┬ [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ └─┬ [email protected]
       │   ├─┬ [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ └── [email protected]
       │   │ ├─┬ [email protected]
       │   │ │ └── [email protected]
       │   │ └─┬ [email protected]
       │   │   └─┬ [email protected]
       │   │     ├── [email protected]
       │   │     ├─┬ [email protected]
       │   │     │ └── [email protected]
       │   │     ├─┬ [email protected]
       │   │     │ └─┬ [email protected]
       │   │     │   ├── [email protected]
       │   │     │   └── [email protected]
       │   │     ├── [email protected]
       │   │     └── [email protected]
       │   └─┬ [email protected]
       │     └── [email protected]
       ├─┬ [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ └─┬ [email protected]
       │ │   ├── [email protected]
       │ │   └── [email protected]
       │ └─┬ [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   ├── [email protected]
       │   └── [email protected]
       ├─┬ [email protected]
       │ ├─┬ [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ ├── [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ └── [email protected]
       ├─┬ [email protected]
       │ ├── [email protected]
       │ └── [email protected]
       ├─┬ [email protected]
       │ ├─┬ [email protected]
       │ │ ├── [email protected]
       │ │ ├─┬ [email protected]
       │ │ │ └── [email protected]
       │ │ └── [email protected]
       │ ├── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ ├─┬ [email protected]
       │ │ │ └── [email protected]
       │ │ ├── [email protected]
       │ │ ├── [email protected]
       │ │ └─┬ [email protected]
       │ │   ├── [email protected]
       │ │   └── [email protected]
       │ ├── [email protected]
       │ ├─┬ [email protected]
       │ │ └── [email protected]
       │ └─┬ [email protected]
       │   ├── [email protected]
       │   └── [email protected]
       └── [email protected]

       npm ERR! Linux 3.13.0-95-generic

       npm ERR! argv "/tmp/build_dea09358fecbaab814f27f093c94d85b/.heroku/node/bin/node" "/tmp/build_dea09358fecbaab814f27f093c94d85b/.heroku/node/bin/npm" "install" "--unsafe-perm" "--userconfig" "/tmp/build_dea09358fecbaab814f27f093c94d85b/.npmrc"

       npm ERR! node v5.11.1
       npm ERR! npm  v3.8.6
       npm ERR! code ELIFECYCLE
       npm ERR! [email protected] install: `node-gyp rebuild`
       npm ERR! Exit status 1
       npm ERR!
       npm ERR! Failed at the [email protected] install script 'node-gyp rebuild'.
       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 canvas package,
       npm ERR! not with npm itself.
       npm ERR! Tell the author that this fails on your system:
       npm ERR!     node-gyp rebuild
       npm ERR! You can get information on how to open an issue for this project with:
       npm ERR!     npm bugs canvas
       npm ERR! Or if that isn't available, you can get their info via:
       npm ERR!     npm owner ls canvas
       npm ERR! There is likely additional logging output above.
       npm ERR! Please include the following file with any support request:
       npm ERR!     /tmp/build_dea09358fecbaab814f27f093c94d85b/npm-debug.log

-----> Build failed
       We're sorry this build is failing! You can troubleshoot common issues here:
       https://devcenter.heroku.com/articles/troubleshooting-node-deploys

       Some possible problems:  
       - Node version not specified in package.json
       https://devcenter.heroku.com/articles/nodejs-support#specifying-a-node-js-version

       Love,
       Heroku

 !     Push rejected, failed to compile Node.js app.
 !     Push failed

I'm not sure I understand the cause of the error or how to solve it. I have tried looking into examples such as: Canvas for Node.js working locally but not on Heroku server but I'm not sure how to solve the issue.

Community
  • 1
  • 1
Yafim Simanovsky
  • 531
  • 7
  • 26

1 Answers1

2

Eventually Heroku support managed to help me resolve most of the problem by:

Perhaps a variation or some of this info might be useful to someone in the future.

Leon
  • 31,443
  • 4
  • 72
  • 97
Yafim Simanovsky
  • 531
  • 7
  • 26