aurora-opensource/xviz

Cannot bootstrap (node v16, Ubuntu 20.04 WSL)

nathanieltagg opened this issue · 2 comments

Hi, I'm getting an error when I attempt to bootstrap the package. It's unclear how to proceed...

yarn run v1.22.18
$ PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true yarn && ocular-bootstrap
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
[4/5] Linking dependencies...
warning " > @babel/plugin-proposal-class-properties@7.10.4" has unmet peer dependency "@babel/core@^7.0.0-0".
warning "@babel/plugin-proposal-class-properties > @babel/helper-create-class-features-plugin@7.10.4" has unmet peer dependency "@babel/core@^7.0.0".
warning " > babel-loader@8.1.0" has unmet peer dependency "@babel/core@^7.0.0".
warning " > babel-loader@8.1.0" has unmet peer dependency "webpack@>=2".
warning " > ocular-dev-tools@0.1.9" has unmet peer dependency "math.gl@^3.0.0".
warning "ocular-dev-tools > eslint-config-uber-es2015@3.1.2" has incorrect peer dependency "eslint@>= 3.0.0 < 5".
warning "ocular-dev-tools > eslint-config-uber-es2015 > eslint-config-uber-es5@2.0.3" has incorrect peer dependency "eslint@>= 3.0.0 < 5".
[5/5] Building fresh packages...
[6/8] ⠠ sharp
[-/8] ⠠ waiting...
[-/8] ⠠ waiting...
[-/8] ⠠ waiting...
error /home/ntagg/xviz/node_modules/sharp: Command failed.
Exit code: 1
Command: (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
Arguments:
Directory: /home/ntagg/xviz/node_modules/sharp
Output:
info sharp Using cached /home/ntagg/.npm/_libvips/libvips-8.8.1-linux-x64.tar.gz
prebuild-install WARN install socket hang up
gyp info it worked if it ends with ok
gyp info using node-gyp@5.1.1
gyp info using node@16.15.0 | linux | x64
gyp info find Python using Python version 3.8.10 found at "/home/ntagg/miniconda3/bin/python"
(node:28569) [DEP0150] DeprecationWarning: Setting process.config is deprecated. In the future the property will be read-only.
(Use `node --trace-deprecation ...` to show where the warning was created)
gyp info spawn /home/ntagg/miniconda3/bin/python
gyp info spawn args [
gyp info spawn args   '/home/ntagg/xviz/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/ntagg/xviz/node_modules/sharp/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/ntagg/xviz/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/ntagg/.cache/node-gyp/16.15.0/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/home/ntagg/.cache/node-gyp/16.15.0',
gyp info spawn args   '-Dnode_gyp_dir=/home/ntagg/xviz/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=/home/ntagg/.cache/node-gyp/16.15.0/<(target_arch)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=/home/ntagg/xviz/node_modules/sharp',
gyp info spawn args   '-Dnode_engine=v8',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/ntagg/xviz/node_modules/sharp/build'
  TOUCH Release/obj.target/libvips-cpp.stamp
  CXX(target) Release/obj.target/sharp/src/common.o
<command-line>: warning: "_GLIBCXX_USE_CXX11_ABI" redefined
<command-line>: note: this is the location of the previous definition
In file included from /home/ntagg/.cache/node-gyp/16.15.0/include/node/v8.h:30,
                 from /home/ntagg/.cache/node-gyp/16.15.0/include/node/node.h:63,
                 from ../src/common.cc:22:
/home/ntagg/.cache/node-gyp/16.15.0/include/node/v8-internal.h: In function ‘void v8::internal::PerformCastCheck(T*)’:
/home/ntagg/.cache/node-gyp/16.15.0/include/node/v8-internal.h:492:38: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
  492 |             !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data);
      |                                      ^~~~~~~~~~~
      |                                      remove_cv
/home/ntagg/.cache/node-gyp/16.15.0/include/node/v8-internal.h:492:38: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’?
  492 |             !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data);
      |                                      ^~~~~~~~~~~
      |                                      remove_cv
/home/ntagg/.cache/node-gyp/16.15.0/include/node/v8-internal.h:492:50: error: template argument 2 is invalid
  492 |             !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data);
      |                                                  ^
/home/ntagg/.cache/node-gyp/16.15.0/include/node/v8-internal.h:492:63: error: ‘::Perform’ has not been declared
  492 |             !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data);
      |                                                               ^~~~~~~
make: *** [sharp.target.mk:139: Release/obj.target/sharp/src/common.o] Error 1
make: Leaving directory '/home/ntagg/xviz/node_modules/sharp/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/home/ntagg/xviz/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (node:events:527:28)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:291:12)
gyp ERR! System Linux 5.10.102.1-microsoft-standard-WSL2
gyp ERR! command "/usr/bin/node" "/home/ntagg/xviz/node_modules/.bin/node-gyp" "rebuild"
gyp ERR! cwd /home/ntagg/xviz/node_modules/sharp




error Command failed with exit code 1.```

same issue with node v16.15.0 and macos Monterey x86. I use nvm use 14 to fix it.

Looks like the old Sharp doesn't work with Node 16. Bump the sharp version required at modules/ros/packages.json to the latest version which they added support