Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Fails to build for Node v10.14.1

Open
#40 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
javascript, node.js
Domain
build-system

Research direction

Reproduce npm i @mapbox/abaculus with Node v10.14.1 and inspect the mapnik install output, especially the node-pre-gyp fallback and node-gyp failure. Compare this with the reported successful direct mapnik installation; done means the abaculus dependency installs successfully on Node v10 without the logged build error.

Written by the indexing model from the issue text.

Description

Tried to move my project to Node v10 and abaculus barks:

$ npm i @mapbox/abaculus

> [email protected] install /tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik
> node-pre-gyp install --fallback-to-build

node-pre-gyp ERR! Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/mapnik/v3.7.2/node-v64-linux-x64-Release.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v64 ABI, glibc) (falling back to source compile with node-gyp) 
node-pre-gyp ERR! Tried to download(undefined): https://mapbox-node-binary.s3.amazonaws.com/mapnik/v3.7.2/node-v64-linux-x64-Release.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for [email protected] and [email protected] (node-v64 ABI, glibc) (falling back to source compile with node-gyp) 
make: Entering directory '/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/build'

[...snip building...]

../../nan/nan_object_wrap.h:66:61:   required from here
/home/flc/.node-gyp/10.14.1/include/node/v8.h:9502:16: warning: cast between incompatible function types from ‘v8::WeakCallbackInfo<Nan::ObjectWrap>::Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<Nan::ObjectWrap>&)’} to ‘Callback’ {aka ‘void (*)(const v8::WeakCallbackInfo<void>&)’} [-Wcast-function-type]
  CXX(target) Release/obj.target/mapnik/src/node_mapnik.o
sed: can't read ./Release/.deps/Release/obj.target/mapnik/src/mapnik_logger.o.d.raw: No such file or directory
make: *** [mapnik.target.mk:237: Release/obj.target/mapnik/src/mapnik_logger.o] Error 2
make: Leaving directory '/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/flc/.nvm/versions/node/v10.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:240:12)
gyp ERR! System Linux 4.19.4-arch1-1-ARCH
gyp ERR! command "/home/flc/.nvm/versions/node/v10.14.1/bin/node" "/home/flc/.nvm/versions/node/v10.14.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/lib/binding/mapnik.node" "--module_name=mapnik" "--module_path=/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/lib/binding"
gyp ERR! cwd /tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik
gyp ERR! node -v v10.14.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok 
node-pre-gyp ERR! build error 
node-pre-gyp ERR! stack Error: Failed to execute '/home/flc/.nvm/versions/node/v10.14.1/bin/node /home/flc/.nvm/versions/node/v10.14.1/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/lib/binding/mapnik.node --module_name=mapnik --module_path=/tmp/mapnik/node_modules/@mapbox/abaculus/node_modules/mapnik/lib/binding' (1)

I see the README.md has the build failing icon, so maybe you were already aware.

Also I tried installing mapnik under Node v10 and went without problems.

Any ideas on how to fix this?

Dominant language
JavaScript
Stars
128
Forks
33
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from mapbox/abaculus

All issues in mapbox/abaculus

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.