coding-coach icon indicating copy to clipboard operation
coding-coach copied to clipboard

yarn install fails due to 'Sharp' dependency

Open fabiopagoti opened this issue 3 years ago • 1 comments

Hello!

I cloned the repo and ran yarn install. It fails with the following output

fabio@hplinux:/storage/dev/coding-coach/coding-coach$ yarn install yarn install v1.22.17 [1/4] Resolving packages... [2/4] Fetching packages... warning [email protected]: Invalid bin field for "mini-css-extract-plugin". warning [email protected]: Invalid bin field for "url-loader". [3/4] Linking dependencies... warning "gatsby-plugin-disqus > babel-preset-gatsby-package > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0". warning "gatsby-plugin-disqus > babel-preset-gatsby-package > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0". warning "gatsby-plugin-disqus > babel-preset-gatsby-package > @babel/plugin-proposal-optional-chaining > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0". warning " > [email protected]" has incorrect peer dependency "gatsby@^3.0.0-next.0". warning "gatsby-plugin-postcss > [email protected]" has unmet peer dependency "webpack@^4.0.0 || ^5.0.0". warning " > [email protected]" has incorrect peer dependency "gatsby@next". warning " > [email protected]" has unmet peer dependency "webpack@^5.0.0". [4/4] Building fresh packages... [-/8] ⠈ waiting... [-/8] ⠈ waiting... [-/8] ⠈ waiting... [4/8] ⠈ sharp error /storage/dev/coding-coach/coding-coach/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: /storage/dev/coding-coach/coding-coach/node_modules/sharp Output: info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.7.4/libvips-8.7.4-linux-x64.tar.gz prebuild-install WARN install No prebuilt binaries found (target=17.3.0 runtime=node arch=x64 libc= platform=linux) gyp info it worked if it ends with ok gyp info using [email protected] gyp info using [email protected] | linux | x64 gyp info find Python using Python version 3.8.10 found at "/usr/bin/python3" gyp http GET https://nodejs.org/download/release/v17.3.0/node-v17.3.0-headers.tar.gz gyp http 200 https://nodejs.org/download/release/v17.3.0/node-v17.3.0-headers.tar.gz gyp http GET https://nodejs.org/download/release/v17.3.0/SHASUMS256.txt gyp http 200 https://nodejs.org/download/release/v17.3.0/SHASUMS256.txt gyp info spawn /usr/bin/python3 gyp info spawn args [ gyp info spawn args '/usr/lib/node_modules/npm/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 '/storage/dev/coding-coach/coding-coach/node_modules/sharp/build/config.gypi', gyp info spawn args '-I', gyp info spawn args '/usr/lib/node_modules/npm/node_modules/node-gyp/addon.gypi', gyp info spawn args '-I', gyp info spawn args '/home/fabio/.cache/node-gyp/17.3.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/fabio/.cache/node-gyp/17.3.0', gyp info spawn args '-Dnode_gyp_dir=/usr/lib/node_modules/npm/node_modules/node-gyp', gyp info spawn args '-Dnode_lib_file=/home/fabio/.cache/node-gyp/17.3.0/<(target_arch)/node.lib', gyp info spawn args '-Dmodule_root_dir=/storage/dev/coding-coach/coding-coach/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 '/storage/dev/coding-coach/coding-coach/node_modules/sharp/build' TOUCH Release/obj.target/libvips-cpp.stamp CXX(target) Release/obj.target/sharp/src/common.o : warning: "_GLIBCXX_USE_CXX11_ABI" redefined : note: this is the location of the previous definition In file included from /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-local-handle.h:12, from /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-array-buffer.h:12, from /home/fabio/.cache/node-gyp/17.3.0/include/node/v8.h:25, from /home/fabio/.cache/node-gyp/17.3.0/include/node/node.h:63, from ../src/common.cc:22: /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-internal.h: In function ‘void v8::internal::PerformCastCheck(T*)’: /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-internal.h:563:38: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’? 563 | !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data); | ^~~~~~~~~~~ | remove_cv /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-internal.h:563:38: error: ‘remove_cv_t’ is not a member of ‘std’; did you mean ‘remove_cv’? 563 | !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data); | ^~~~~~~~~~~ | remove_cv /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-internal.h:563:50: error: template argument 2 is invalid 563 | !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data); | ^ /home/fabio/.cache/node-gyp/17.3.0/include/node/v8-internal.h:563:63: error: ‘::Perform’ has not been declared 563 | !std::is_same<Data, std::remove_cv_t<T>>::value>::Perform(data); | ^~~~~~~ In file included from ../../nan/nan.h:2884, from ../src/common.cc:24: ../../nan/nan_typedarray_contents.h: In constructor ‘Nan::TypedArrayContents<T>::TypedArrayContents(v8::Localv8::Value)’: ../../nan/nan_typedarray_contents.h:34:43: error: ‘class v8::ArrayBuffer’ has no member named ‘GetContents’ 34 | data = static_cast<char*>(buffer->GetContents().Data()) + byte_offset; | ^~~~~~~~~~~ make: *** [sharp.target.mk:140: Release/obj.target/sharp/src/common.o] Error 1 make: Leaving directory '/storage/dev/coding-coach/coding-coach/node_modules/sharp/build' gyp ERR! build error gyp ERR! stack Error: make failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23) gyp ERR! stack at ChildProcess.emit (node:events:390:28) gyp ERR! stack at Process.ChildProcess._handle.onexit (node:internal/child_process:290:12) gyp ERR! System Linux 5.11.0-43-generic gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /storage/dev/coding-coach/coding-coach/node_modules/sharp

As you can see, something is wrong on this Sharp dependency and I found the following issue on Sharp repo (npm install doesn't work, because of sharp's command).

The error prevents starting the local server.

fabiopagoti avatar Jan 03 '22 01:01 fabiopagoti

I tried changing the 'gatsby-plugin-sharp` to versions 2.6.10 and 4.4.10 but the problem persists

fabiopagoti avatar Jan 03 '22 02:01 fabiopagoti