Hello,
During the install process on Ubuntu 22.04.3 LTS, I got this error :
photostructure@uwu:~/photostructure-for-servers$ ./start.sh
No local changes to save
Already up to date.
yarn install v1.22.21
[1/4] Resolving packages...
[2/4] Fetching packages...
[3/4] Linking dependencies...
[4/4] Building fresh packages...
[1/2] â better-sqlite3
error /home/photostructure/photostructure-for-servers/node_modules/better-sqlite3: Command failed.
Exit code: 1
Command: prebuild-install || npm run build-release
Arguments:
Directory: /home/photostructure/photostructure-for-servers/node_modules/better-sqlite3
Output:
prebuild-install WARN install No prebuilt binaries found (target=20.10.0 runtime=node arch=x64 libc= platform=linux)
> better-sqlite3@7.4.3 build-release
> node-gyp rebuild --release
gyp info it worked if it ends with ok
gyp info using node-gyp@10.0.1
gyp info using node@20.10.0 | linux | x64
gyp info find Python using Python version 3.10.12 found at "/usr/bin/python3"
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 '/home/photostructure/photostructure-for-servers/node_modules/better-sqlite3/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/photostructure/.cache/node-gyp/20.10.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/photostructure/.cache/node-gyp/20.10.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/photostructure/.cache/node-gyp/20.10.0/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/home/photostructure/photostructure-for-servers/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 info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/photostructure/photostructure-for-servers/node_modules/better-sqlite3/build'
TOUCH b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
ACTION deps_sqlite3_gyp_locate_sqlite3_target_extract_sqlite3 b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
TOUCH Release/obj.target/deps/locate_sqlite3.stamp
CC(target) Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o
rm -f Release/obj.target/deps/sqlite3.a Release/obj.target/deps/sqlite3.a.ar-file-list; mkdir -p `dirname Release/obj.target/deps/sqlite3.a`
ar crs Release/obj.target/deps/sqlite3.a @Release/obj.target/deps/sqlite3.a.ar-file-list
COPY Release/sqlite3.a
CXX(target) Release/obj.target/better_sqlite3/src/better_sqlite3.o
In file included from ./src/better_sqlite3.lzz:11,
from ../src/better_sqlite3.cpp:4:
/home/photostructure/.cache/node-gyp/20.10.0/include/node/node.h:1192:7: warning: cast between incompatible function types 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*)â} [-Wcast-function-type]
1192 | (node::addon_context_register_func) (regfunc), \
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/photostructure/.cache/node-gyp/20.10.0/include/node/node.h:1210:3: note: in expansion of macro âNODE_MODULE_CONTEXT_AWARE_Xâ
1210 | NODE_MODULE_CONTEXT_AWARE_X(modname, regfunc, NULL, 0)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/photostructure/.cache/node-gyp/20.10.0/include/node/node.h:1241:3: note: in expansion of macro âNODE_MODULE_CONTEXT_AWAREâ
1241 | NODE_MODULE_CONTEXT_AWARE(NODE_GYP_MODULE_NAME, \
| ^~~~~~~~~~~~~~~~~~~~~~~~~
./src/better_sqlite3.lzz:67:1: note: in expansion of macro âNODE_MODULE_INITâ
./src/util/macros.lzz: In function âvoid SetPrototypeGetter(v8::Isolate*, v8::Local<v8::External>, v8::Local<v8::FunctionTemplate>, const char*, v8::AccessorGetterCallback)â:
./src/util/macros.lzz:157:21: error: âv8::AccessorSignatureâ has not been declared
./src/util/binder.lzz: In static member function âstatic bool Binder::IsPlainObject(v8::Isolate*, v8::Local<v8::Object>)â:
./src/util/binder.lzz:37:51: error: âclass v8::Objectâ has no member named âCreationContextâ; did you mean âGetCreationContextâ?
./src/util/data.lzz: In function âv8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_stmt*, int, bool)â:
./src/util/data.lzz:73:92: warning: this statement may fall through [-Wimplicit-fallthrough=]
./src/util/data.lzz:73:197: note: here
./src/util/data.lzz: In function âv8::Local<v8::Value> Data::GetValueJS(v8::Isolate*, sqlite3_value*, bool)â:
./src/util/data.lzz:77:81: warning: this statement may fall through [-Wimplicit-fallthrough=]
./src/util/data.lzz:77:175: note: here
make: *** [better_sqlite3.target.mk:125: Release/obj.target/better_sqlite3/src/better_sqlite3.o] Error 1
rm b857c92884e9598d609f6be182a2595df7a8e00f.intermediate
make: Leaving directory '/home/photostructure/photostructure-for-servers/node_modules/better-sqlite3/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:209:23)
gyp ERR! System Linux 5.15.0-91-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--release"
gyp ERR! cwd /home/photostructure/photostructure-for-servers/node_modules/better-sqlite3
gyp ERR! node -v v20.10.0
gyp ERR! node-gyp -v v10.0.1
gyp ERR! not ok
Dependency installation failed.
Please refer to <https://photostructure.com/server/photostructure-for-node/>.
You can also visit <https://forum.photostructure.com> for help.
Any idea whatâs wrong ?
Many thanks,
Kevin