Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Node.js v20 support #1022

Closed
mcollina opened this issue Jun 15, 2023 · 1 comment
Closed

Node.js v20 support #1022

mcollina opened this issue Jun 15, 2023 · 1 comment

Comments

@mcollina
Copy link

Currently installing on Node.js v20 fails with the following error on Mac OS X (arm):


npm ERR! code 1
npm ERR! path /Users/matteo/Repositories/sqlite-pool/node_modules/better-sqlite3
npm ERR! command failed
npm ERR! command sh -c prebuild-install || npm run build-release
npm ERR! > better-sqlite3@7.6.2 build-release
npm ERR! > node-gyp rebuild --release
npm ERR!
npm ERR!   TOUCH ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR!   ACTION deps_sqlite3_gyp_locate_sqlite3_target_copy_builtin_sqlite3 ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR!   TOUCH Release/obj.target/deps/locate_sqlite3.stamp
npm ERR!   CC(target) Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o
npm ERR!   LIBTOOL-STATIC Release/sqlite3.a
npm ERR!   CXX(target) Release/obj.target/better_sqlite3/src/better_sqlite3.o
npm ERR! rm ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR! prebuild-install warn install No prebuilt binaries found (target=20.3.0 runtime=node arch=arm64 libc= platform=darwin)
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp info using node-gyp@9.3.1
npm ERR! gyp info using node@20.3.0 | darwin | arm64
npm ERR! gyp info find Python using Python version 3.10.9 found at "/opt/homebrew/opt/python@3.10/bin/python3.10"
npm ERR! gyp http GET https://nodejs.org/download/release/v20.3.0/node-v20.3.0-headers.tar.gz
npm ERR! gyp http 200 https://nodejs.org/download/release/v20.3.0/node-v20.3.0-headers.tar.gz
npm ERR! gyp http GET https://nodejs.org/download/release/v20.3.0/SHASUMS256.txt
npm ERR! gyp http 200 https://nodejs.org/download/release/v20.3.0/SHASUMS256.txt
npm ERR! gyp info spawn /opt/homebrew/opt/python@3.10/bin/python3.10
npm ERR! gyp info spawn args [
npm ERR! gyp info spawn args   '/Users/matteo/.nvm/versions/node/v20.3.0/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   '/Users/matteo/Repositories/sqlite-pool/node_modules/better-sqlite3/build/config.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/Users/matteo/.nvm/versions/node/v20.3.0/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
npm ERR! gyp info spawn args   '-I',
npm ERR! gyp info spawn args   '/Users/matteo/Library/Caches/node-gyp/20.3.0/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=/Users/matteo/Library/Caches/node-gyp/20.3.0',
npm ERR! gyp info spawn args   '-Dnode_gyp_dir=/Users/matteo/.nvm/versions/node/v20.3.0/lib/node_modules/npm/node_modules/node-gyp',
npm ERR! gyp info spawn args   '-Dnode_lib_file=/Users/matteo/Library/Caches/node-gyp/20.3.0/<(target_arch)/node.lib',
npm ERR! gyp info spawn args   '-Dmodule_root_dir=/Users/matteo/Repositories/sqlite-pool/node_modules/better-sqlite3',
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 spawn make
npm ERR! gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
npm ERR! In file included from ../src/better_sqlite3.cpp:4:
npm ERR! In file included from ./src/better_sqlite3.lzz:11:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/node.h:73:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8.h:24:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-array-buffer.h:12:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-local-handle.h:12:
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:465:30: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! SHARED_EXTERNAL_POINTER_TAGS(CHECK_SHARED_EXTERNAL_POINTER_TAGS)
npm ERR!                              ^
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:465:30: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:465:30: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:465:30: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:465:30: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! PER_ISOLATE_EXTERNAL_POINTER_TAGS(CHECK_NON_SHARED_EXTERNAL_POINTER_TAGS)
npm ERR!                                   ^
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:466:35: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:693:61: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR!     static_assert(kJSObjectType + 1 == kFirstJSApiObjectType);
npm ERR!                                                             ^
npm ERR!                                                             , ""
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:694:55: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR!     static_assert(kJSObjectType < kLastJSApiObjectType);
npm ERR!                                                       ^
npm ERR!                                                       , ""
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-internal.h:695:63: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR!     static_assert(kFirstJSApiObjectType < kLastJSApiObjectType);
npm ERR!                                                               ^
npm ERR!                                                               , ""
npm ERR! In file included from ../src/better_sqlite3.cpp:4:
npm ERR! In file included from ./src/better_sqlite3.lzz:11:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/node.h:73:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8.h:24:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-array-buffer.h:13:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-object.h:9:
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-maybe.h:106:45: error: no template named 'is_lvalue_reference_v' in namespace 'std'; did you mean 'is_lvalue_reference'?
npm ERR!   template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
npm ERR!                                        ~~~~~^~~~~~~~~~~~~~~~~~~~~
npm ERR!                                             is_lvalue_reference
npm ERR! /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__type_traits/is_reference.h:26:29: note: 'is_lvalue_reference' declared here
npm ERR! struct _LIBCPP_TEMPLATE_VIS is_lvalue_reference : _BoolConstant<__is_lvalue_reference(_Tp)> { };
npm ERR!                             ^
npm ERR! In file included from ../src/better_sqlite3.cpp:4:
npm ERR! In file included from ./src/better_sqlite3.lzz:11:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/node.h:73:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8.h:24:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-array-buffer.h:13:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-object.h:9:
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-maybe.h:106:69: error: expected '(' for function-style cast or type construction
npm ERR!   template <class U, std::enable_if_t<!std::is_lvalue_reference_v<U>>*>
npm ERR!                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-maybe.h:123:43: error: no template named 'is_lvalue_reference_v' in namespace 'std'; did you mean 'is_lvalue_reference'?
npm ERR! template <class T, std::enable_if_t<!std::is_lvalue_reference_v<T>>* = nullptr>
npm ERR!                                      ~~~~~^~~~~~~~~~~~~~~~~~~~~
npm ERR!                                           is_lvalue_reference
npm ERR! /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__type_traits/is_reference.h:26:29: note: 'is_lvalue_reference' declared here
npm ERR! struct _LIBCPP_TEMPLATE_VIS is_lvalue_reference : _BoolConstant<__is_lvalue_reference(_Tp)> { };
npm ERR!                             ^
npm ERR! In file included from ../src/better_sqlite3.cpp:4:
npm ERR! In file included from ./src/better_sqlite3.lzz:11:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/node.h:73:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8.h:24:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-array-buffer.h:13:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-object.h:9:
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-maybe.h:123:67: error: expected '(' for function-style cast or type construction
npm ERR! template <class T, std::enable_if_t<!std::is_lvalue_reference_v<T>>* = nullptr>
npm ERR!                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
npm ERR! In file included from ../src/better_sqlite3.cpp:4:
npm ERR! In file included from ./src/better_sqlite3.lzz:11:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/node.h:73:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8.h:33:
npm ERR! In file included from /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-function.h:11:
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-function-callback.h:151:66: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR!                 kReturnValueDefaultValueIndex - kReturnValueIndex);
npm ERR!                                                                  ^
npm ERR!                                                                  , ""
npm ERR! /Users/matteo/Library/Caches/node-gyp/20.3.0/include/node/v8-function-callback.h:153:50: warning: 'static_assert' with no message is a C++17 extension [-Wc++17-extensions]
npm ERR!                 kIsolateIndex - kReturnValueIndex);
npm ERR!                                                  ^
npm ERR!                                                  , ""
npm ERR! ./src/util/macros.lzz:157:21: error: no member named 'AccessorSignature' in namespace 'v8'
npm ERR!                 v8::AccessorSignature::New(isolate, recv)
npm ERR!                 ~~~~^
npm ERR! ./src/objects/database.lzz:180:21: warning: variable 'status' set but not used [-Wunused-but-set-variable]
npm ERR!                 int status = sqlite3_db_config(db_handle, SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION, 1, NULL);
npm ERR!                     ^
npm ERR! ./src/util/binder.lzz:37:51: error: no member named 'CreationContext' in 'v8::Object'
npm ERR!                 v8::Local<v8::Context> ctx = obj->CreationContext();
npm ERR!                                              ~~~~~^
npm ERR! 23 warnings and 6 errors generated.
npm ERR! make: *** [Release/obj.target/better_sqlite3/src/better_sqlite3.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 (/Users/matteo/.nvm/versions/node/v20.3.0/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:203:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:511:28)
npm ERR! gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:293:12)
npm ERR! gyp ERR! System Darwin 22.5.0
npm ERR! gyp ERR! command "/Users/matteo/.nvm/versions/node/v20.3.0/bin/node" "/Users/matteo/.nvm/versions/node/v20.3.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--release"
npm ERR! gyp ERR! cwd /Users/matteo/Repositories/sqlite-pool/node_modules/better-sqlite3
npm ERR! gyp ERR! node -v v20.3.0
npm ERR! gyp ERR! node-gyp -v v9.3.1
npm ERR! gyp ERR! not ok

npm ERR! A complete log of this run can be found in: /Users/matteo/.npm/_logs/2023-06-15T12_38_09_937Z-debug-0.log
@mcollina
Copy link
Author

nevermind, I'm using an old version

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant