-
Notifications
You must be signed in to change notification settings - Fork 179
Open
Description
electron version 35.1.4
electron/rebuild version 3.7.1
node version v20.12.1
I'm dealing with the classic problem of better-sqlite3
being installed with a different node version from electron's, but when trying to rebuild the package, I get β Rebuild Failed
, along with a monstrous node-gyp error log, printed (in part) below. Curious if anyone else has observed this and has guidance on how to resolve π
Let me know if I can provide any more information.
gyp verb build/config.gypi writing out config file: /MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/config.gypi
gyp verb config.gypi checking for gypi file: /MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/config.gypi
gyp verb common.gypi checking for gypi file: /MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/common.gypi
gyp verb gyp gyp format was not specified; forcing "make"
gyp info spawn /opt/homebrew/opt/[email protected]/bin/python3.12
gyp info spawn args [
gyp info spawn args '/MY_COMPUTER_PATH/MY_PROJECT/node_modules/@electron/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 '/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/config.gypi',
gyp info spawn args '-I',
gyp info spawn args '/MY_COMPUTER_PATH/MY_PROJECT/node_modules/@electron/node-gyp/addon.gypi',
gyp info spawn args '-I',
gyp info spawn args '/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/common.gypi',
gyp info spawn args '-Dlibrary=shared_library',
gyp info spawn args '-Dvisibility=default',
gyp info spawn args '-Dnode_root_dir=/MY_COMPUTER_PATH/.electron-gyp/35.1.4',
gyp info spawn args '-Dnode_gyp_dir=/MY_COMPUTER_PATH/MY_PROJECT/node_modules/@electron/node-gyp',
gyp info spawn args '-Dnode_lib_file=/MY_COMPUTER_PATH/.electron-gyp/35.1.4/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3',
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 verb build type Release
gyp verb architecture arm64
gyp verb node dev dir /MY_COMPUTER_PATH/.electron-gyp/35.1.4
gyp verb python /opt/homebrew/opt/[email protected]/bin/python3.12
gyp verb `which` succeeded for `make` /usr/bin/make
gyp verb bin symlinks created symlink to "/opt/homebrew/opt/[email protected]/bin/python3.12" in "/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/node_gyp_bins" and added to PATH
gyp info spawn make
gyp info spawn args [ 'V=1', 'BUILDTYPE=Release', '-C', 'build' ]
touch ba23eeee118cd63e16015df367567cb043fed872.intermediate
LD_LIBRARY_PATH=/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/Release/lib.host:/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps; mkdir -p /MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/Release/obj/gen/sqlite3; node copy.js "/MY_COMPUTER_PATH/MY_PROJECT/node_modules/better-sqlite3/build/Release/obj/gen/sqlite3" ""
touch Release/obj.target/deps/locate_sqlite3.stamp
cc -o Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o Release/obj/gen/sqlite3/sqlite3.c '-DNODE_GYP_MODULE_NAME=sqlite3' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-DELECTRON_ENSURE_CONFIG_GYPI' '-D_DARWIN_USE_64_BIT_INODE=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DUSING_ELECTRON_CONFIG_GYPI' '-DV8_COMPRESS_POINTERS' '-DV8_COMPRESS_POINTERS_IN_ISOLATE_CAGE' '-DV8_31BIT_SMIS_ON_64BIT_ARCH' '-DV8_ENABLE_SANDBOX' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_ASM' '-DHAVE_INT16_T=1' '-DHAVE_INT32_T=1' '-DHAVE_INT8_T=1' '-DHAVE_STDINT_H=1' '-DHAVE_UINT16_T=1' '-DHAVE_UINT32_T=1' '-DHAVE_UINT8_T=1' '-DHAVE_USLEEP=1' '-DSQLITE_DEFAULT_CACHE_SIZE=-16000' '-DSQLITE_DEFAULT_FOREIGN_KEYS=1' '-DSQLITE_DEFAULT_MEMSTATUS=0' '-DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1' '-DSQLITE_DQS=0' '-DSQLITE_ENABLE_COLUMN_METADATA' '-DSQLITE_ENABLE_DESERIALIZE' '-DSQLITE_ENABLE_FTS3' '-DSQLITE_ENABLE_FTS3_PARENTHESIS' '-DSQLITE_ENABLE_FTS4' '-DSQLITE_ENABLE_FTS5' '-DSQLITE_ENABLE_GEOPOLY' '-DSQLITE_ENABLE_JSON1' '-DSQLITE_ENABLE_MATH_FUNCTIONS' '-DSQLITE_ENABLE_RTREE' '-DSQLITE_ENABLE_STAT4' '-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT' '-DSQLITE_LIKE_DOESNT_MATCH_BLOBS' '-DSQLITE_OMIT_DEPRECATED' '-DSQLITE_OMIT_GET_TABLE' '-DSQLITE_OMIT_PROGRESS_CALLBACK' '-DSQLITE_OMIT_SHARED_CACHE' '-DSQLITE_OMIT_TCL_VARIABLE' '-DSQLITE_SOUNDEX' '-DSQLITE_THREADSAFE=2' '-DSQLITE_TRACE_SIZE_LIMIT=32' '-DSQLITE_USE_URI=0' '-DNDEBUG' -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/src -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/openssl/config -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/openssl/openssl/include -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/uv/include -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/zlib -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/v8/include -I./Release/obj/gen/sqlite3 -O3 -fno-strict-aliasing -mmacosx-version-min=10.7 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -w -std=c99 -MMD -MF ./Release/.deps/Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o.d.raw -c
rm -f Release/sqlite3.a && ./gyp-mac-tool filter-libtool libtool -static -o Release/sqlite3.a Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o
c++ -o Release/obj.target/better_sqlite3/src/better_sqlite3.o ../src/better_sqlite3.cpp '-DNODE_GYP_MODULE_NAME=better_sqlite3' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-D_GLIBCXX_USE_CXX11_ABI=1' '-DELECTRON_ENSURE_CONFIG_GYPI' '-D_DARWIN_USE_64_BIT_INODE=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-DUSING_ELECTRON_CONFIG_GYPI' '-DV8_COMPRESS_POINTERS' '-DV8_COMPRESS_POINTERS_IN_ISOLATE_CAGE' '-DV8_31BIT_SMIS_ON_64BIT_ARCH' '-DV8_ENABLE_SANDBOX' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DOPENSSL_NO_ASM' '-DBUILDING_NODE_EXTENSION' '-DNDEBUG' -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/src -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/openssl/config -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/openssl/openssl/include -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/uv/include -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/zlib -I/MY_COMPUTER_PATH/.electron-gyp/35.1.4/deps/v8/include -I./Release/obj/gen/sqlite3 -O3 -fno-strict-aliasing -mmacosx-version-min=10.7 -arch arm64 -Wall -Wendif-labels -W -Wno-unused-parameter -std=gnu++20 -stdlib=libc++ -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -std=c++17 -stdlib=libc++ -MMD -MF ./Release/.deps/Release/obj.target/better_sqlite3/src/better_sqlite3.o.d.raw -c
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:23:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/cppgc/common.h:8:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8config.h:13:2: error: "C++20 or later required."
13 | #error "C++20 or later required."
| ^
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:24:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-array-buffer.h:12:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-local-handle.h:13:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-handle-base.h:8:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-internal.h:1268:37: error: a non-type template parameter cannot have type 'ExternalPointerTagRange' (aka 'TagRange<ExternalPointerTag>') before C++20
1268 | template <ExternalPointerTagRange tag_range>
| ^
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:24:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-array-buffer.h:13:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-memory-span.h:45:28: error: no member named 'ranges' in namespace 'std'
45 | inline constexpr bool std::ranges::enable_view<v8::MemorySpan<T>> = true;
| ~~~~~^
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-memory-span.h:47:28: error: no member named 'ranges' in namespace 'std'
47 | inline constexpr bool std::ranges::enable_borrowed_range<v8::MemorySpan<T>> =
| ~~~~~^
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-memory-span.h:168:35: error: no type named 'contiguous_iterator_tag' in namespace 'std'; did you mean 'output_iterator_tag'?
168 | using iterator_concept = std::contiguous_iterator_tag;
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~
| output_iterator_tag
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/c++/v1/__iterator/iterator_traits.h:70:29: note: 'output_iterator_tag' declared here
70 | struct _LIBCPP_TEMPLATE_VIS output_iterator_tag {};
| ^
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:24:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-array-buffer.h:14:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:12:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-primitive.h:969:15: error: no matching function for call to 'ReadExternalPointerField'
969 | A value = I::ReadExternalPointerField<internal::kExternalStringResourceTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-primitive.h:991:15: error: no matching function for call to 'ReadExternalPointerField'
991 | A value = I::ReadExternalPointerField<internal::kExternalStringResourceTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-primitive.h:1014:15: error: no matching function for call to 'ReadExternalPointerField'
1014 | A value = I::ReadExternalPointerField<internal::kExternalStringResourceTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:24:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-array-buffer.h:14:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:913:9: error: no matching function for call to 'ReadExternalPointerField'
913 | I::ReadExternalPointerField<internal::kEmbedderDataSlotPayloadTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:935:9: error: no matching function for call to 'ReadExternalPointerField'
935 | I::ReadExternalPointerField<internal::kEmbedderDataSlotPayloadTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:26:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-context.h:473:7: error: no matching function for call to 'ReadExternalPointerField'
473 | I::ReadExternalPointerField<internal::kEmbedderDataSlotPayloadTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-context.h:492:7: error: no matching function for call to 'ReadExternalPointerField'
492 | I::ReadExternalPointerField<internal::kEmbedderDataSlotPayloadTag>(
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/better_sqlite3.cpp:4:
./src/util/macros.lzz:31:69: error: no template named 'CopyablePersistentTraits' in namespace 'v8'; did you mean 'NonCopyablePersistentTraits'?
31 | template <class T> using CopyablePersistent = v8::Persistent<T, v8::CopyablePersistentTraits<T>>;
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~~
| NonCopyablePersistentTraits
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-persistent-handle.h:223:7: note: 'NonCopyablePersistentTraits' declared here
223 | class NonCopyablePersistentTraits {
| ^
In file included from ../src/better_sqlite3.cpp:4:
./src/util/macros.lzz:142:142: error: no type named 'AccessorGetterCallback' in namespace 'v8'; did you mean 'AccessorNameGetterCallback'?
142 | void SetPrototypeGetter (v8::Isolate * isolate, v8::Local <v8::External> data, v8::Local <v8::FunctionTemplate> recv, char const * name, v8::AccessorGetterCallback func);
| ~~~~^~~~~~~~~~~~~~~~~~~~~~
| AccessorNameGetterCallback
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:157:7: note: 'AccessorNameGetterCallback' declared here
157 | using AccessorNameGetterCallback =
| ^
./src/better_sqlite3.lzz:67:1: warning: cast from 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>)' to 'node::addon_context_register_func' (aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, v8::Local<v8::Context>, void *)') converts to incompatible function type [-Wcast-function-type-mismatch]
67 | NODE_MODULE_INIT(/* exports, context */) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:1302:3: note: expanded from macro 'NODE_MODULE_INIT'
1302 | NODE_MODULE_CONTEXT_AWARE(NODE_GYP_MODULE_NAME, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1303 | NODE_MODULE_INITIALIZER) \
| ~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:1271:3: note: expanded from macro 'NODE_MODULE_CONTEXT_AWARE'
1271 | NODE_MODULE_CONTEXT_AWARE_X(modname, regfunc, NULL, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:1253:7: note: expanded from macro 'NODE_MODULE_CONTEXT_AWARE_X'
1253 | (node::addon_context_register_func) (regfunc), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/util/macros.lzz:142:142: error: no type named 'AccessorGetterCallback' in namespace 'v8'; did you mean 'AccessorNameGetterCallback'?
142 | void SetPrototypeGetter (v8::Isolate * isolate, v8::Local <v8::External> data, v8::Local <v8::FunctionTemplate> recv, char const * name, v8::AccessorGetterCallback func)
| ~~~~^~~~~~~~~~~~~~~~~~~~~~
| AccessorNameGetterCallback
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:157:7: note: 'AccessorNameGetterCallback' declared here
157 | using AccessorNameGetterCallback =
| ^
./src/util/macros.lzz:150:35: error: no member named 'SetAccessor' in 'v8::ObjectTemplate'
150 | recv->InstanceTemplate()->SetAccessor(
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^
./src/objects/database.lzz:17:17: error: no matching function for call to 'SetPrototypeGetter'
17 | SetPrototypeGetter(isolate, data, t, "open", JS_open);
| ^~~~~~~~~~~~~~~~~~
./src/util/macros.lzz:142:6: note: candidate function not viable: no known conversion from 'void (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value> &)' to 'v8::AccessorNameGetterCallback' (aka 'void (*)(Local<Name>, const PropertyCallbackInfo<Value> &)') for 5th argument
142 | void SetPrototypeGetter (v8::Isolate * isolate, v8::Local <v8::External> data, v8::Local <v8::FunctionTemplate> recv, char const * name, v8::AccessorGetterCallback func)
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/objects/database.lzz:18:17: error: no matching function for call to 'SetPrototypeGetter'
18 | SetPrototypeGetter(isolate, data, t, "inTransaction", JS_inTransaction);
| ^~~~~~~~~~~~~~~~~~
./src/util/macros.lzz:142:6: note: candidate function not viable: no known conversion from 'void (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value> &)' to 'v8::AccessorNameGetterCallback' (aka 'void (*)(Local<Name>, const PropertyCallbackInfo<Value> &)') for 5th argument
142 | void SetPrototypeGetter (v8::Isolate * isolate, v8::Local <v8::External> data, v8::Local <v8::FunctionTemplate> recv, char const * name, v8::AccessorGetterCallback func)
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./src/objects/database.lzz:180:21: warning: variable 'status' set but not used [-Wunused-but-set-variable]
180 | int status = sqlite3_db_config(db_handle, SQLITE_DBCONFIG_ENABLE_LOAD_EXTENSION, 1, NULL);
| ^
./src/objects/statement.lzz:16:17: error: no matching function for call to 'SetPrototypeGetter'
16 | SetPrototypeGetter(isolate, data, t, "busy", JS_busy);
| ^~~~~~~~~~~~~~~~~~
./src/util/macros.lzz:142:6: note: candidate function not viable: no known conversion from 'void (v8::Local<v8::String>, const v8::PropertyCallbackInfo<v8::Value> &)' to 'v8::AccessorNameGetterCallback' (aka 'void (*)(Local<Name>, const PropertyCallbackInfo<Value> &)') for 5th argument
142 | void SetPrototypeGetter (v8::Isolate * isolate, v8::Local <v8::External> data, v8::Local <v8::FunctionTemplate> recv, char const * name, v8::AccessorGetterCallback func)
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../src/better_sqlite3.cpp:4:
In file included from ./src/better_sqlite3.lzz:11:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node.h:79:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8.h:24:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-array-buffer.h:14:
In file included from /MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-object.h:11:
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/v8-persistent-handle.h:493:26: warning: cast from 'typename WeakCallbackInfo<ObjectWrap>::Callback' (aka 'void (*)(const WeakCallbackInfo<ObjectWrap> &)') to 'Callback' (aka 'void (*)(const WeakCallbackInfo<void> &)') converts to incompatible function type [-Wcast-function-type-mismatch]
493 | reinterpret_cast<Callback>(callback), type);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/MY_COMPUTER_PATH/.electron-gyp/35.1.4/include/node/node_object_wrap.h:85:18: note: in instantiation of function template specialization 'v8::PersistentBase<v8::Object>::SetWeak<node::ObjectWrap>' requested here
85 | persistent().SetWeak(this, WeakCallback, v8::WeakCallbackType::kParameter);
| ^
3 warnings and 19 errors generated.
make: *** [Release/obj.target/better_sqlite3/src/better_sqlite3.o] Error 1
rm ba23eeee118cd63e16015df367567cb043fed872.intermediate
Error: `make` failed with exit code: 2
at ChildProcess.<anonymous> (/MY_COMPUTER_PATH/MY_PROJECT/node_modules/@electron/node-gyp/lib/build.js:215:23)
β Rebuild Failed
dperettidperetti
Metadata
Metadata
Assignees
Labels
No labels