Nach dem Update auf nodejs 14 startet der Jeelink-Adapter nicht mehr:
host.raspi4
2021-11-20 10:50:26.370 error instance system.adapter.jeelink.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
host.raspi4
2021-11-20 10:50:26.369 error Caught by controller[0]: }
host.raspi4
2021-11-20 10:50:26.369 error Caught by controller[0]: ]
host.raspi4
2021-11-20 10:50:26.368 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-arm/bindings.node'
host.raspi4
2021-11-20 10:50:26.368 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node',
host.raspi4
2021-11-20 10:50:26.368 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node',
host.raspi4
2021-11-20 10:50:26.367 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node',
host.raspi4
2021-11-20 10:50:26.366 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/compiled/14.18.1/linux/arm/bindings.node',
host.raspi4
2021-11-20 10:50:26.366 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node',
host.raspi4
2021-11-20 10:50:26.365 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node',
host.raspi4
2021-11-20 10:50:26.364 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node',
host.raspi4
2021-11-20 10:50:26.364 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node',
host.raspi4
2021-11-20 10:50:26.364 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node',
host.raspi4
2021-11-20 10:50:26.363 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node',
host.raspi4
2021-11-20 10:50:26.363 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node',
host.raspi4
2021-11-20 10:50:26.362 error Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/bindings.node',
host.raspi4
2021-11-20 10:50:26.362 error Caught by controller[0]: tries: [
host.raspi4
2021-11-20 10:50:26.361 error Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) {
host.raspi4
2021-11-20 10:50:26.361 error Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22)
host.raspi4
2021-11-20 10:50:26.360 error Caught by controller[0]: at require (internal/modules/cjs/helpers.js:93:18)
host.raspi4
2021-11-20 10:50:26.359 error Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19)
host.raspi4
2021-11-20 10:50:26.359 error Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12)
host.raspi4
2021-11-20 10:50:26.358 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32)
host.raspi4
2021-11-20 10:50:26.358 error Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
host.raspi4
2021-11-20 10:50:26.357 error Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14)
host.raspi4
2021-11-20 10:50:26.356 error Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:1:36)
host.raspi4
2021-11-20 10:50:26.356 error Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9)
host.raspi4
2021-11-20 10:50:26.356 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-arm/bindings.node
host.raspi4
2021-11-20 10:50:26.355 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
host.raspi4
2021-11-20 10:50:26.354 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
host.raspi4
2021-11-20 10:50:26.354 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
host.raspi4
2021-11-20 10:50:26.353 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/compiled/14.18.1/linux/arm/bindings.node
host.raspi4
2021-11-20 10:50:26.352 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node
host.raspi4
2021-11-20 10:50:26.351 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node
host.raspi4
2021-11-20 10:50:26.351 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node
host.raspi4
2021-11-20 10:50:26.350 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node
host.raspi4
2021-11-20 10:50:26.349 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node
host.raspi4
2021-11-20 10:50:26.349 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node
host.raspi4
2021-11-20 10:50:26.348 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node
host.raspi4
2021-11-20 10:50:26.347 error Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node
host.raspi4
2021-11-20 10:50:26.347 error Caught by controller[0]: Error: Could not locate the bindings file. Tried:
host.raspi4
2021-11-20 10:50:26.342 error Caught by controller[0]: ^
host.raspi4
2021-11-20 10:50:26.341 error Caught by controller[0]: throw err;
host.raspi4
2021-11-20 10:50:26.332 error Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:135
Ich habe schon versucht, den Adapter neu zu bauen, steigt mit einem Fehler aus:
pi@raspi4:/opt/iobroker/node_modules/@serialport/bindings $ iobroker rebuild jeelink --install
npm install --loglevel error --production (System call1) in "/opt/iobroker/node_modules/iobroker.jeelink"
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
^~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
^~~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
^~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
^~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
^~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
^~~~~~~~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../../../nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../../../nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../../../nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
^~~~~~~~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../../../nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
^~~~~~~~~~~~~~
../src/serialport.cpp: At global scope:
../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
^
../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
^
In file included from ../../../nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:787:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
(node::addon_register_func) (regfunc), \
^
/home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:821:3: note: in expansion of macro ‘NODE_MODULE_X’
NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage)
^~~~~~~~~~~~~
../src/serialport.cpp:483:1: note: in expansion of macro ‘NODE_MODULE’
NODE_MODULE(serialport, init);
^~~~~~~~~~~
make: *** [bindings.target.mk:112: Release/obj.target/bindings/src/serialport.o] Fehler 1
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 (events.js:400:28)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
gyp ERR! System Linux 5.10.63-v7l+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/iobroker/node_modules/iobroker.jeelink/node_modules/@serialport/bindings
gyp ERR! node -v v14.18.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/iobroker/.npm/_logs/2021-11-20T09_52_25_659Z-debug.log
Rebuild jeelink done
Anhand des Outputs ist zu sehen, das serialport wohl Probleme macht, habe versucht, das nach der Anleitung oben direkt neu zu bauen, klappt leider auch nicht:
pi@raspi4:/opt/iobroker/node_modules/@serialport/bindings $ npm install --production
> @serialport/bindings@2.0.8 install /opt/iobroker/node_modules/@serialport/bindings
> prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
prebuild-install WARN install No prebuilt binaries found (target=14.18.1 runtime=node arch=arm libc= platform=linux)
make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird betreten
CXX(target) Release/obj.target/bindings/src/serialport.o
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
^~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
^~~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
^~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
^~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
^~~~~~~~~~~~
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
^~~~~~~~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../node_modules/nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../node_modules/nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../node_modules/nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
^~~~~~~~~~~~~~~~~~~~
../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
^
In file included from /home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:67,
from ../node_modules/nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
^~~
/home/iobroker/.cache/node-gyp/14.18.1/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided
../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
^~~~~~~~~~~~~~
../src/serialport.cpp: At global scope:
../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
^
../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
^
In file included from ../node_modules/nan/nan.h:58,
from ../src/./serialport.h:6,
from ../src/serialport.cpp:1:
/home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:787:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
(node::addon_register_func) (regfunc), \
^
/home/iobroker/.cache/node-gyp/14.18.1/include/node/node.h:821:3: note: in expansion of macro ‘NODE_MODULE_X’
NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage)
^~~~~~~~~~~~~
../src/serialport.cpp:483:1: note: in expansion of macro ‘NODE_MODULE’
NODE_MODULE(serialport, init);
^~~~~~~~~~~
make: *** [bindings.target.mk:112: Release/obj.target/bindings/src/serialport.o] Fehler 1
make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird verlassen
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 (events.js:400:28)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
gyp ERR! System Linux 5.10.63-v7l+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/iobroker/node_modules/@serialport/bindings
gyp ERR! node -v v14.18.1
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /home/iobroker/.npm/_logs/2021-11-20T09_54_34_853Z-debug.log
Bin jetzt mit meinem Latein am Ende und bräuchte eure Hilfe.
js-controller ist 3.3.18, admin ist 5.x, weitere Daten zum System:
Plattform
linux
Betriebssystem
linux
Architektur
arm
CPUs
4
Geschwindigkeit
1500 MHz
Modell
ARMv7 Processor rev 3 (v7l)
RAM
7.71 GB
System-Betriebszeit
01:09:25
Node.js
v14.18.1 (Empfohlene Version v12.22.7)
NPM
6.14.15
Datenträgergröße
457.2 GB
freier Festplattenspeicher
425.39 GB
Anzahl der Adapter
363
Betriebszeit
00:47:26
Aktive Instanzen
18
location
/opt/iobroker/
Hostname
raspi4