NEWS
[How-to] Node.js ioBroker richtig updaten-2021/22 Edition
-
@alcalzone said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@apollon77 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@AlCalzone noch ne idee?
paar Sekunden warten. Das passiert eigentlich nur wenn innerhalb der letzen 10s der DB-Prozess abgeschmiert ist ohne die DB sauber zu schließen.
also das warten wäre es nicht...hab ja gestern schon versucht und heute..also zeit hätte das teil ja genug.
ich finde auch das recht spannend (was auch immer redis damit zu tun hat):
node-pre-gyp WARN Using request for node-pre-gyp https download [lzma-native] Success: "/opt/iobroker/node_modules/iobroker.javascript/node_modules/lzma-native/binding-v4.0.6-node-v83-linux-x64/lzma_native.node" already installed Pass --update-binary to reinstall or --build-from-source to recompile > iobroker.js-controller@4.0.4 preinstall /opt/iobroker/node_modules/iobroker.js-controller > node lib/preinstallCheck.js NPM version: 6.14.16 > iobroker.js-controller@4.0.4 install /opt/iobroker/node_modules/iobroker.js-controller > node iobroker.js setup first Connection is closed. Uncaught Rejection: Error: States DB is not allowed to start in the current Multihost environment at Redis.<anonymous> (/opt/iobroker/node_modules/@iobroker/db-states-redis/lib/states/statesInRedisClient.js:579:23) at processTicksAndRejections (internal/process/task_queues.js:95:5) Server Cannot start inMem-states on port 9000: Failed to lock DB file "/opt/iobroker/iobroker-data/states.jsonl"! npm ERR! code ELIFECYCLE npm ERR! errno 24 npm ERR! iobroker.js-controller@4.0.4 install: `node iobroker.js setup first` npm ERR! Exit status 24 npm ERR! npm ERR! Failed at the iobroker.js-controller@4.0.4 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/2022-02-08T08_21_08_680Z-debug.log chris@IoBrokerSmartHome:/opt/iobroker$
-
Ok, kannst Du denn "iob setup first" generell aufrufen ... nicht im Rahmen des Rebuilds?
-
@homecineplexx Dann kann eigentlich nur ein anderer Controller/CLI-Prozess noch laufen, der die DB in Nutzung hat. @apollon77 ne Idee wie das sein kann?
-
@homecineplexx Das hietr ist auch komisch. Mach mal bitte in /opt/iobroker
node --trace-warnings node_modules/iobroker.js-controller/iobroker.js status
-
@alcalzone sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@apollon77 ne Idee wie das sein kann?
Nope, müsste man prozessliste schauen
-
@apollon77 said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@homecineplexx Das hietr ist auch komisch. Mach mal bitte in /opt/iobroker
node --trace-warnings node_modules/iobroker.js-controller/iobroker.js status
chris@IoBrokerSmartHome:/opt/iobroker$ node --trace-warnings node_modules/iobroker.js-controller/iobroker.js status iobroker is running on this host. Objects type: jsonl States type: jsonl
-
@apollon77 said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
iob setup first
ist das richtig so?
chris@IoBrokerSmartHome:/opt/iobroker$ iob setup first Uncaught Rejection: Error: Connection is closed. at close (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:184:25) at Socket.<anonymous> (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:151:20) at Object.onceWrapper (events.js:520:26) at Socket.emit (events.js:400:28) at TCP.<anonymous> (net.js:686:12) Unable to subscribe to expiry Keyspace events from Redis Server: Connection is closed. Unable to subscribe to evicted Keyspace events from Redis Server: Connection is closed. Unable to subscribe to meta namespace "meta." changes: Connection is closed. Server Cannot start inMem-states on port 9000: Failed to lock DB file "/opt/iobroker/iobroker-data/states.jsonl"!
-
@homecineplexx mmeeehhhhhhhh ... warum ises jetzt weg?
-
@apollon77 said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@alcalzone sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@apollon77 ne Idee wie das sein kann?
Nope, müsste man prozessliste schauen
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 740 iobroker 20 0 961420 391716 35652 R 90,1 7,7 15:51.29 io.javascript.0 648 iobroker 20 0 1071492 345812 35536 R 81,9 6,8 15:53.74 iobroker.js-con 2682 iobroker 20 0 773400 77984 32184 S 55,3 1,5 0:06.77 io.ical.0 812 iobroker 20 0 887992 320028 35728 S 37,2 6,3 7:16.57 io.javascript.1 1210 iobroker 20 0 691884 112144 31084 R 28,3 2,2 3:07.88 io.homepilot20. 834 iobroker 20 0 877164 302152 30764 S 28,0 5,9 5:04.49 io.javascript.2 827 iobroker 20 0 713120 117676 30932 S 21,1 2,3 4:32.82 io.influxdb.0 853 iobroker 20 0 717864 92828 30728 S 8,2 1,8 1:02.62 io.mqtt.0 1404 iobroker 20 0 699892 72076 31552 S 5,6 1,4 0:35.33 io.unifi.0 710 iobroker 20 0 1049460 161264 36348 S 3,6 3,2 0:48.42 io.admin.0 460 root 20 0 44256 4720 4228 S 3,0 0,1 0:00.57 systemd-journal 1047 iobroker 20 0 692692 62364 30720 S 1,6 1,2 0:04.51 io.text2command 725 iobroker 20 0 693964 63832 30628 S 1,3 1,3 0:12.87 io.history.0 782 iobroker 20 0 950172 66920 31624 S 1,3 1,3 0:13.74 io.telegram.1 797 iobroker 20 0 884356 66448 31632 S 1,3 1,3 0:13.21 io.telegram.2 766 iobroker 20 0 950200 67456 31492 S 1,0 1,3 0:14.05 io.telegram.0 1449 iobroker 20 0 811760 59540 31772 S 1,0 1,2 0:04.31 io.parser.0 1509 iobroker 20 0 692628 61876 31064 S 1,0 1,2 0:05.86 io.wled.0 667 root 20 0 250112 3036 2432 S 0,7 0,1 0:00.09 rsyslogd 994 iobroker 20 0 964656 68452 31804 S 0,7 1,3 0:15.78 io.alexa2.0 2667 iobroker 20 0 691740 59736 30804 S 0,7 1,2 0:03.60 io.meteoalarm.0 2710 chris 20 0 44932 3788 3144 R 0,7 0,1 0:00.09 top 7 root 20 0 0 0 0 R 0,3 0,0 0:01.62 rcu_sched 658 avahi 20 0 47132 3364 2956 S 0,3 0,1 0:00.75 avahi-daemon 751 iobroker 20 0 694264 61820 30584 S 0,3 1,2 0:04.74 io.scenes.0 1116 iobroker 20 0 669588 55876 30804 S 0,3 1,1 0:05.46 io.yeelight-2.0 1167 iobroker 20 0 968468 67660 31664 S 0,3 1,3 0:07.69 io.cloud.0 1 root 20 0 56888 6496 5112 S 0,0 0,1 0:01.73 systemd 2 root 20 0 0 0 0 S 0,0 0,0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0,0 0,0 0:00.17 ksoftirqd/0 5 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kworker/0:0H 8 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_bh 9 root rt 0 0 0 0 S 0,0 0,0 0:00.00 migration/0 10 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 lru-add-drain 11 root rt 0 0 0 0 S 0,0 0,0 0:00.00 watchdog/0 12 root 20 0 0 0 0 S 0,0 0,0 0:00.00 cpuhp/0 13 root 20 0 0 0 0 S 0,0 0,0 0:00.00 cpuhp/1 14 root rt 0 0 0 0 S 0,0 0,0 0:00.00 watchdog/1 15 root rt 0 0 0 0 S 0,0 0,0 0:00.00 migration/1 16 root 20 0 0 0 0 S 0,0 0,0 0:00.67 ksoftirqd/1 18 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kworker/1:0H 19 root 20 0 0 0 0 S 0,0 0,0 0:00.00 cpuhp/2 20 root rt 0 0 0 0 S 0,0 0,0 0:00.00 watchdog/2 21 root rt 0 0 0 0 S 0,0 0,0 0:00.00 migration/2 22 root 20 0 0 0 0 S 0,0 0,0 0:00.17 ksoftirqd/2 24 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kworker/2:0H 25 root 20 0 0 0 0 S 0,0 0,0 0:00.00 cpuhp/3
-
@apollon77 said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@homecineplexx mmeeehhhhhhhh ... warum ises jetzt weg?
ich hab keine ahnung...das darfst mich nicht fragen
-
@homecineplexx ok, dann beende mal iobroker bevor du den rebuild machst ... irgendwas ist dennoch phishy weil an sich sollte er keine neuen states DB verbinden wenn schon eine an ist
-
@apollon77 said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@homecineplexx ok, dann beende mal iobroker bevor du den rebuild machst ... irgendwas ist dennoch phishy weil an sich sollte er keine neuen states DB verbinden wenn schon eine an ist
soviel dazu
Thank you for using serialport! If you rely on this package, please consider supporting our open collective: > https://opencollective.com/serialport/donate > @serialport/bindings@9.0.4 install /opt/iobroker/node_modules/@serialport/bindings > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild > serialport@6.2.2 install /opt/iobroker/node_modules/serialport > prebuild-install || node-gyp rebuild prebuild-install WARN install No prebuilt binaries found (target=14.19.0 runtime=node arch=x64 platform=linux) make: Verzeichnis „/opt/iobroker/node_modules/serialport/build“ wird betreten CXX(target) Release/obj.target/serialport/src/serialport.o ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:41:48: error: no matching function for call to ‘v8::Value::ToString()’ v8::String::Utf8Value path(info[0]->ToString()); ^ In file included from /home/iobroker/.cache/node-gyp/14.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2810:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString( ^~~~~~~~ /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2810:44: note: candidate expects 1 argument, 0 provided ../src/serialport.cpp:48:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local<v8::Object> options = info[1]->ToObject(); ^ In file included from /home/iobroker/.cache/node-gyp/14.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject( ^~~~~~~~ /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided ../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t*)’: ../src/serialport.cpp:95:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:113:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local<v8::Object> options = info[1]->ToObject(); ^ In file included from /home/iobroker/.cache/node-gyp/14.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject( ^~~~~~~~ /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided ../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t*)’: ../src/serialport.cpp:150:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t*)’: ../src/serialport.cpp:188:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t*)’: ../src/serialport.cpp:231:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’: ../src/serialport.cpp:250:53: error: no matching function for call to ‘v8::Value::ToObject()’ v8::Local<v8::Object> options = info[1]->ToObject(); ^ In file included from /home/iobroker/.cache/node-gyp/14.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject( ^~~~~~~~ /home/iobroker/.cache/node-gyp/14.19.0/include/node/v8.h:2822:44: note: candidate expects 1 argument, 0 provided ../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t*)’: ../src/serialport.cpp:285:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../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.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/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.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/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.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided ../src/serialport.cpp:336:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../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.19.0/include/node/node.h:67:0, from ../../nan/nan.h:58, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3670:37: note: candidate expects 3 arguments, 2 provided /home/iobroker/.cache/node-gyp/14.19.0/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.19.0/include/node/v8.h:3673:37: note: candidate expects 3 arguments, 2 provided ../src/serialport.cpp:383:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t*)’: ../src/serialport.cpp:424:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1744:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: At global scope: ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void void init(v8::Handle<v8::Object> target) { ^~~~~~ ../src/serialport.cpp:460:13: error: ‘Handle’ is not a member of ‘v8’ void init(v8::Handle<v8::Object> target) { ^~ ../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ token void init(v8::Handle<v8::Object> target) { ^ ../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope void init(v8::Handle<v8::Object> target) { ^~~~~~ In file included from ../../nan/nan.h:58:0, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope NODE_MODULE(serialport, init); ^ /home/iobroker/.cache/node-gyp/14.19.0/include/node/node.h:793:36: note: in definition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^~~~~~~ ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~ serialport.target.mk:114: die Regel für Ziel „Release/obj.target/serialport/src/serialport.o“ scheiterte make: *** [Release/obj.target/serialport/src/serialport.o] Fehler 1 make: Verzeichnis „/opt/iobroker/node_modules/serialport/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 4.9.0-11-amd64 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 gyp ERR! node -v v14.19.0 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the serialport@6.2.2 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/2022-02-08T08_35_50_311Z-debug.log chris@IoBrokerSmartHome:/opt/iobroker$
-
@homecineplexx sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
4.9.0-11-amd64
Läuft da noch ein Debian Stretch?
-
@thomas-braun said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
@homecineplexx sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
4.9.0-11-amd64
Läuft da noch ein Debian Stretch?
Linux IoBrokerSmartHome 4.9.0-11-amd64 #1 SMP Debian 4.9.189-3+deb9u2 (2019-11-11) x86_64 GNU/Linux
-
cat /etc/debian_version
Kann sein, dass der ganze build stack zu alt ist. Stretch ist auch tot, update das ganze auf ein lebendes Release.
-
@thomas-braun said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:
cat /etc/debian_version
Kann sein, dass der ganze build stack zu alt ist. Stretch ist auch tot, update das ganze auf ein lebendes Release.
werd ich machen
cat /etc/debian_version 9.11
-
Guten Morgen. Bin gerade dabei meinen neuen NUC hochzuziehen. Proxmox 7.1-10 ist installiert. Ein neuer unpreviligiert Container mit akutellem debian ist erstellt. Doch nach der Installation meckert er herum.
Ist iobroker nun richtig installiert trotz der Fehlermeldung?
root@Iobroker:~# cat /etc/debian_version 11.2 root@Iobroker:~# node -v v14.19.0 root@Iobroker:~# nodejs -v -bash: nodejs: command not found root@Iobroker:~# npm -v 6.14.16 root@Iobroker:~# curl -sLf https://iobroker.net/install.sh | bash - library: loaded Library version=2022-02-10 ========================================================================== Welcome to the ioBroker installer! Installer version: 2022-02-10 ========================================================================== ========================================================================== Installing prerequisites (1/4) ========================================================================== Hit:1 http://security.debian.org bullseye-security InRelease Hit:2 http://ftp.debian.org/debian bullseye InRelease Hit:3 http://ftp.debian.org/debian bullseye-updates InRelease Hit:4 https://deb.nodesource.com/node_14.x bullseye InRelease Reading package lists... Done Changing npm registry to https://registry.npmjs.org Installed acl Installed build-essential Installed gcc-c++ Installed libavahi-compat-libdnssd-dev Installed libudev-dev Installed libpam0g-dev Installed git Installed unzip Installed libcairo2-dev Installed libpango1.0-dev Installed libjpeg-dev Installed libgif-dev Installed librsvg2-dev Installed net-tools Installed python-dev Installed cmake ========================================================================== Creating ioBroker user and directory (2/4) ========================================================================== User iobroker created Created /etc/sudoers.d/iobroker Directory /opt/iobroker created ========================================================================== Installing ioBroker (3/4) ========================================================================== In file included from ../../nan/nan.h:58, from ../src/main.cpp:3: /root/.cache/node-gyp/14.19.0/include/node/node.h:793:7: warning: cast between incompatible function types from 'void (*)(v8::Local<v8::Object>)' to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type] 793 | (node::addon_register_func) (regfunc), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /root/.cache/node-gyp/14.19.0/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X' 827 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) | ^~~~~~~~~~~~~ ../src/main.cpp:42:1: note: in expansion of macro 'NODE_MODULE' 42 | NODE_MODULE(diskusage, Init) | ^~~~~~~~~~~ In file included from ../../nan/nan.h:58, from ../src/unix_dgram.cc:5: /root/.cache/node-gyp/14.19.0/include/node/node.h:793:7: warning: cast between incompatible function types from 'void (*)(v8::Local<v8::Object>)' to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type] 793 | (node::addon_register_func) (regfunc), \ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /root/.cache/node-gyp/14.19.0/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X' 827 | NODE_MODULE_X(modname, regfunc, NULL, 0) // NOLINT (readability/null_usage) | ^~~~~~~~~~~~~ ../src/unix_dgram.cc:404:1: note: in expansion of macro 'NODE_MODULE' 404 | NODE_MODULE(unix_dgram, Initialize) | ^~~~~~~~~~~ ATTENTION: Error reporting via Sentry will be activated on next start of ioBroker ioBroker wants to make sure to deliver the most stable smart home system. To allow this we decided to implement an automatic error and crash reporting solution into the js-controller and also into adapters. THIS REPORTING WILL BE ENABLED WITH THE NEXT START OF YOUR IOBROKER! For any error that leads to the crash of the js-controller or one of the relevant adapters the error details are send to a server. For the js-controller and core adapters this server is located and operated in germany. For community adapters please check the Github Readme of the affected adapter for details which Sentry server is used. If you want to disable the error reporting you can use the command 'iobroker plugin disable sentry' This command will also make sure that no adapter that runs on this host will send crash reporting data to sentry. ========================================================================== Finalizing installation (4/4) ========================================================================== Enabling autostart... Created symlink /etc/systemd/system/multi-user.target.wants/iobroker.service -> /lib/systemd/system/iobroker.service. Autostart enabled! Fixing directory permissions... ========================================================================== ioBroker was installed successfully Open http://192.168.178.11:8081 in a browser and start configuring! ========================================================================== You need to re-login before doing anything else on the console!
-
@ecki945
Die Frage ist eher, warum ist vor der IOBroker Installation schon Node drauf, muss das bei Proxmox manuell erledigt werden und wenn ja, warum stimmt dann die Abfrage der Installation nicht? -
Node habe ich vor der Installation von iobroker installiert.
So hab ich das aus der Doku verstanden.
-
@ecki945
Der Doku kann man so folgen, wobei die mal erweiter werden müsste, mit dem Hinweis, das IOBroker Node mit installiert.
Mit dem Proxmox Zeug kenne ich mich nicht aus, wobei ich davon ausgehe, das die Pfade für Node identisch sein sollten und die sind bei Dir bei der Abfrage schon angemeckert wordenIch würde das jetzt einfach mal wieder alles löschen und schlicht die IOBroker Installation durchführen, danach mal die Node kontrollieren.