openmaptiles/fonts

Getting tons of error on npm install

Closed this issue · 4 comments

Hi All,

I cloned the repo and did npm install, getting tons of error for it:

npm install
npm WARN deprecated node-pre-gyp@0.14.0: Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
npm ERR! code 1
npm ERR! path /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik
npm ERR! command failed
npm ERR! command sh -c node-pre-gyp install --fallback-to-build=true
npm ERR! make: Entering directory '/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/build'
npm ERR!   ACTION binding_gyp_action_before_build_target_install_deps mason_packages
npm ERR! Downloading https://s3.amazonaws.com/mason-binaries/linux-x86_64/clang++/10.0.0.tar.gz
npm ERR!   TOUCH Release/obj.target/action_before_build.stamp
npm ERR!   CXX(target) Release/obj.target/fontnik/src/node_fontnik.o
npm ERR! make: Leaving directory '/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/build'
npm ERR! Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build=true --module=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding/fontnik.node --module_name=fontnik --module_path=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp info using node-pre-gyp@0.14.0
npm ERR! node-pre-gyp info using node@16.13.2 | linux | x64
npm ERR! node-pre-gyp WARN Using needle for node-pre-gyp https download 
npm ERR! node-pre-gyp info check checked for "/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding/fontnik.node" (not found)
npm ERR! node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/fontnik/v0.6.0/Release/node-v93-linux-x64.tar.gz
npm ERR! node-pre-gyp http 403 https://mapbox-node-binary.s3.amazonaws.com/fontnik/v0.6.0/Release/node-v93-linux-x64.tar.gz
npm ERR! node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/fontnik/v0.6.0/Release/node-v93-linux-x64.tar.gz 
npm ERR! node-pre-gyp WARN Pre-built binaries not found for fontnik@0.6.0 and node@16.13.2 (node-v93 ABI, glibc) (falling back to source compile with node-gyp) 
npm ERR! node-pre-gyp http 403 status code downloading tarball https://mapbox-node-binary.s3.amazonaws.com/fontnik/v0.6.0/Release/node-v93-linux-x64.tar.gz 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.0.0
npm ERR! gyp info using node@16.13.2 | linux | x64
npm ERR! gyp info ok 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.0.0
npm ERR! gyp info using node@16.13.2 | linux | x64
npm ERR! gyp info find Python using Python version 3.7.3 found at "/usr/bin/python3"
npm ERR! gyp info spawn /usr/bin/python3
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
npm ERR! gyp info spawn args   'binding.gyp',
npm ERR! gyp info spawn args   '-f',                                                                                                                  
npm ERR! gyp info spawn args   'make',                                                                                                                
npm ERR! gyp info spawn args   '-I',                                                                                                                  
npm ERR! gyp info spawn args   '/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/build/config.gypi',                                           
npm ERR! gyp info spawn args   '-I',                                                                                                                  
npm ERR! gyp info spawn args   '/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/common.gypi',                                                 
npm ERR! gyp info spawn args   '-I',                                                                                                                  
npm ERR! gyp info spawn args   '/usr/local/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',                                                    
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/home/anurag/.cache/node-gyp/16.13.2/include/node/common.gypi',
npm ERR! gyp info spawn args   '-Dlibrary=shared_library',
npm ERR! gyp info spawn args   '-Dvisibility=default',
npm ERR! gyp info spawn args   '-Dnode_root_dir=/home/anurag/.cache/node-gyp/16.13.2',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=/usr/local/lib/node_modules/npm/node_modules/node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=/home/anurag/.cache/node-gyp/16.13.2/<(target_arch)/node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik',
npm ERR! gyp info spawn args   '-Dnode_engine=v8',
npm ERR! gyp info spawn args   '--depth=.',
npm ERR! gyp info spawn args   '--no-parallel',
npm ERR! gyp info spawn args   '--generator-output',
npm ERR! gyp info spawn args   'build',
npm ERR! gyp info spawn args   '-Goutput_dir=.'
npm ERR! gyp info spawn args ]
npm ERR! gyp info ok 
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.0.0
npm ERR! gyp info using node@16.13.2 | linux | x64
npm ERR! gyp info spawn make
npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! basename: missing operand
npm ERR! Try 'basename --help' for more information.
npm ERR! * Downloading binary package https://mason-binaries.s3.amazonaws.com/headers/boost/1.67.0.tar.gz
npm ERR! * Installed binary package at /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/boost/1.67.0
npm ERR! basename: missing operand
npm ERR! Try 'basename --help' for more information.
npm ERR! * Linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/boost/1.67.0
npm ERR! * Links will be inside /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/.link/
npm ERR! * Using 'cp' for symlinking
npm ERR! * Done linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/boost/1.67.0
npm ERR! * Downloading binary package https://mason-binaries.s3.amazonaws.com/linux-x86_64/freetype/2.7.1.tar.gz
npm ERR! * Installed binary package at /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/linux-x86_64/freetype/2.7.1
npm ERR! * Linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/linux-x86_64/freetype/2.7.1
npm ERR! * Links will be inside /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/.link/
npm ERR! * Using 'cp' for symlinking
npm ERR! * Done linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/linux-x86_64/freetype/2.7.1
npm ERR! * Downloading binary package https://mason-binaries.s3.amazonaws.com/headers/protozero/1.6.8.tar.gz
npm ERR! * Installed binary package at /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/protozero/1.6.8
npm ERR! * Linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/protozero/1.6.8
npm ERR! * Links will be inside /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/.link/
npm ERR! * Using 'cp' for symlinking
npm ERR! * Done linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/protozero/1.6.8
npm ERR! * Downloading binary package https://mason-binaries.s3.amazonaws.com/headers/sdf-glyph-foundry/0.1.1.tar.gz
npm ERR! * Installed binary package at /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/sdf-glyph-foundry/0.1.1
npm ERR! * Linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/sdf-glyph-foundry/0.1.1
npm ERR! * Links will be inside /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/.link/
npm ERR! * Using 'cp' for symlinking
npm ERR! * Done linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/sdf-glyph-foundry/0.1.1
npm ERR! * Downloading binary package https://mason-binaries.s3.amazonaws.com/headers/gzip-hpp/0.1.0.tar.gz
npm ERR! * Installed binary package at /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/gzip-hpp/0.1.0
npm ERR! * Linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/gzip-hpp/0.1.0
npm ERR! * Links will be inside /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/.link/
npm ERR! * Using 'cp' for symlinking
npm ERR! * Done linking /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/mason_packages/headers/gzip-hpp/0.1.0
npm ERR! <command-line>: error: "_GLIBCXX_USE_CXX11_ABI" redefined
npm ERR! <command-line>: note: this is the location of the previous definition
npm ERR! make: *** [fontnik.target.mk:156: Release/obj.target/fontnik/src/node_fontnik.o] Error 1
npm ERR! gyp ERR! build error 
npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2
npm ERR! gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:390:28)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:290:12)
npm ERR! gyp ERR! System Linux 5.0.0-38-generic
npm ERR! gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build=true" "--module=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding/fontnik.node" "--module_name=fontnik" "--module_path=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding" "--napi_version=8" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v93"
npm ERR! gyp ERR! cwd /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik
npm ERR! gyp ERR! node -v v16.13.2
npm ERR! gyp ERR! node-gyp -v v9.0.0
npm ERR! gyp ERR! not ok 
npm ERR! node-pre-gyp ERR! build error 
npm ERR! node-pre-gyp ERR! stack Error: Failed to execute '/usr/local/bin/node /usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build=true --module=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding/fontnik.node --module_name=fontnik --module_path=/home/anurag/temp_anurag/osm/fonts/node_modules/fontnik/lib/binding --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/home/anurag/temp_anurag/osm/fonts/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:390:28)
npm ERR! node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1064:16)
npm ERR! node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)
npm ERR! node-pre-gyp ERR! System Linux 5.0.0-38-generic
npm ERR! node-pre-gyp ERR! command "/usr/local/bin/node" "/home/anurag/temp_anurag/osm/fonts/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build=true"
npm ERR! node-pre-gyp ERR! cwd /home/anurag/temp_anurag/osm/fonts/node_modules/fontnik
npm ERR! node-pre-gyp ERR! node -v v16.13.2
npm ERR! node-pre-gyp ERR! node-pre-gyp -v v0.14.0
npm ERR! node-pre-gyp ERR! not ok

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/anurag/.npm/_logs/2022-07-31T02_38_57_989Z-debug-0.log

I get quite identical messages. I am using

  • node v16.17.1
  • System Linux 5.10.0-18-amd64
  • Python 3.9.2
  • node-gyp@9.1.0

I was able to solve the problem. I had to change the fontnik-version in the file package.json to:
"fontnik": "0.8.0-dev.2"
Now it works.

Thanks @swen100 it worked for me, using nodejs 18. Weird thing is that fontnik apparently has no releases in the last 2 years after 0.6

I was able to solve the problem. I had to change the fontnik-version in the file package.json to: "fontnik": "0.8.0-dev.2" Now it works.

Yes this works. Thank you.