Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Installation-Problem auf Ubuntu 18.04 wegen node/nodejs

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Installation-Problem auf Ubuntu 18.04 wegen node/nodejs

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
installationsprobleme
22 Beiträge 6 Kommentatoren 2.3k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • I Offline
    I Offline
    ioMarkusBroker
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    ich bin neu hier und möchte mich kurz vorstellen:

    Ich heiße Markus und betreibe mein Smarthome seit 2016 per FHEM.
    Zunächst wie oft üblich auf Raspis und schließlich auf einem Intel NUC (FHEM 5.8 |intel NUC Core i3: Ubuntu 18.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator)

    Ich spiele schon seit längerem mit dem Gedanken ergänzend über den FHEM-Adapter iobroker einzusetzen. Leider scheitere ich derzeit an einer verkorksten node/nodejs Installation.

    Ich bin absolut kein Linux-Profi und habe mir diese beim Versuch den Alexa-Skill für FHEM ans Laufen zu bekommen, eingehandelt.

    Das Problem: node und nodejs haben unterschiedliche Versionen:

    markus@Jarvis4:~$ nodejs -v
    v10.19.0
    markus@Jarvis4:~$ node -v
    v12.14.1
    markus@Jarvis4:~$ npm -v
    6.13.4
    

    Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

    Ich vermute, dass ich es irgendwie geschafft habe, das unter meinem home/markus- Verzeichnis zu installieren, weshalb die Anleitung:

    sudo apt-get --purge remove node

    sudo apt-get --purge remove nodejs

    sudo apt-get autoremove

    sudo reboot

    nicht klappt.

    nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

    Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:

    ==========================================================================
        Installing ioBroker (3/4)
    ==========================================================================
    
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
       v8::String::Utf8Value path(info[0]->ToString());
                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
    ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
    ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
    ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
    ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
    ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
    ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
    ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                              ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
    ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
       void init(v8::Handle<v8::Object> target) {
                     ^~~~~~
    ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
    ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
       void init(v8::Handle<v8::Object> target) {
                                      ^
    ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
       void init(v8::Handle<v8::Object> target) {
                                        ^~~~~~
    ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
       void init(v8::Handle<v8::Object> target) {
                                        ^~~~~~
                                        tzset
    In file included from ../../nan/nan.h:54:0,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
     NODE_MODULE(serialport, init);
                             ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
           (node::addon_register_func) (regfunc),                          \
                                        ^~~~~~~
    ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
     NODE_MODULE(serialport, init);
     ^~~~~~~~~~~
    ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
     NODE_MODULE(serialport, init);
                             ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
           (node::addon_register_func) (regfunc),                          \
                                        ^~~~~~~
    ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
     NODE_MODULE(serialport, init);
     ^~~~~~~~~~~
    make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
    gyp ERR! build error 
    gyp ERR! stack Error: `make` failed with exit code: 2
    gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
    gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
    gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
    gyp ERR! System Linux 4.15.0-91-generic
    gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
    gyp ERR! node-gyp -v v5.0.5
    gyp ERR! not ok 
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
       v8::String::Utf8Value path(info[0]->ToString());
                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                     Local<String> ToString(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
    ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
    ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
    ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
    ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
    ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
       v8::Local<v8::Object> options = info[1]->ToObject();
                                                         ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
       V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                ^~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                     Local<Object> ToObject(Isolate* isolate) const);
                                   ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
    ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
    ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                    ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
    ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
         results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                              ^
    In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                     from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                     from ../../nan/nan.h:54,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                     bool Set(Local<Value> key, Local<Value> value));
                          ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
       declarator __attribute__((deprecated(message)))
       ^~~~~~~~~~
    ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
       Call(int argc, v8::Local<v8::Value> argv[]) const {
       ^~~~
    ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
    ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
       void init(v8::Handle<v8::Object> target) {
                     ^~~~~~
    ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
    ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
       void init(v8::Handle<v8::Object> target) {
                                      ^
    ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
       void init(v8::Handle<v8::Object> target) {
                                        ^~~~~~
    ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
       void init(v8::Handle<v8::Object> target) {
                                        ^~~~~~
                                        tzset
    In file included from ../../nan/nan.h:54:0,
                     from ../src/./serialport.h:6,
                     from ../src/serialport.cpp:1:
    ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
     NODE_MODULE(serialport, init);
                             ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
           (node::addon_register_func) (regfunc),                          \
                                        ^~~~~~~
    ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
     NODE_MODULE(serialport, init);
     ^~~~~~~~~~~
    ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
     NODE_MODULE(serialport, init);
                             ^
    /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
           (node::addon_register_func) (regfunc),                          \
                                        ^~~~~~~
    ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
     NODE_MODULE(serialport, init);
     ^~~~~~~~~~~
    make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
    gyp ERR! build error 
    gyp ERR! stack Error: `make` failed with exit code: 2
    gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
    gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
    gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
    gyp ERR! System Linux 4.15.0-91-generic
    gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
    gyp ERR! node-gyp -v v5.0.5
    gyp ERR! not ok 
    
    ==========================================================================
        Finalizing installation (4/4)
    ==========================================================================
    
    Enabling autostart...
    Autostart enabled!
    Fixing directory permissions...
    
    ==========================================================================
    
        ioBroker was installed successfully
        Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
    
    ==========================================================================
    
    
    You need to re-login before doing anything else on the console!
    
    markus@Jarvis4:~$ 
    
    

    "ioBroker was installed successfully", lässt mich angesichts obiger Unstimmigkeiten etwas verunsichert zurück.

    Auch die merkwürdige url mit den 2 IP-Adressen macht wenig Sinn:

     Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
    

    Sinnvoller wäre

    http://192.168.178.74:8081
    

    Wenn ich diese URL aufrufe, komme ich tatsächlich in die initiale Konfiguration von ioBroker.

    Meine Frage: habe ich nun trotz obiger Umstände ein stabiles System, mit dem es sich weiterzuarbeiten lohnt, oder sollte hier zunächst einiges gerade gezogen werden, bevor ich mit ioBroker durchstarten kann?

    Gruß
    Markus

    HomoranH meuteM 2 Antworten Letzte Antwort
    0
    • I ioMarkusBroker

      Hallo zusammen,

      ich bin neu hier und möchte mich kurz vorstellen:

      Ich heiße Markus und betreibe mein Smarthome seit 2016 per FHEM.
      Zunächst wie oft üblich auf Raspis und schließlich auf einem Intel NUC (FHEM 5.8 |intel NUC Core i3: Ubuntu 18.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator)

      Ich spiele schon seit längerem mit dem Gedanken ergänzend über den FHEM-Adapter iobroker einzusetzen. Leider scheitere ich derzeit an einer verkorksten node/nodejs Installation.

      Ich bin absolut kein Linux-Profi und habe mir diese beim Versuch den Alexa-Skill für FHEM ans Laufen zu bekommen, eingehandelt.

      Das Problem: node und nodejs haben unterschiedliche Versionen:

      markus@Jarvis4:~$ nodejs -v
      v10.19.0
      markus@Jarvis4:~$ node -v
      v12.14.1
      markus@Jarvis4:~$ npm -v
      6.13.4
      

      Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

      Ich vermute, dass ich es irgendwie geschafft habe, das unter meinem home/markus- Verzeichnis zu installieren, weshalb die Anleitung:

      sudo apt-get --purge remove node

      sudo apt-get --purge remove nodejs

      sudo apt-get autoremove

      sudo reboot

      nicht klappt.

      nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

      Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:

      ==========================================================================
          Installing ioBroker (3/4)
      ==========================================================================
      
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
         v8::String::Utf8Value path(info[0]->ToString());
                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                       Local<String> ToString(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                       Local<String> ToString(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
      ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
      ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
      ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
      ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
      ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
      ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
      ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
      ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
         void init(v8::Handle<v8::Object> target) {
                       ^~~~~~
      ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
      ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
         void init(v8::Handle<v8::Object> target) {
                                        ^
      ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
         void init(v8::Handle<v8::Object> target) {
                                          ^~~~~~
      ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
         void init(v8::Handle<v8::Object> target) {
                                          ^~~~~~
                                          tzset
      In file included from ../../nan/nan.h:54:0,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
       NODE_MODULE(serialport, init);
                               ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
             (node::addon_register_func) (regfunc),                          \
                                          ^~~~~~~
      ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
       NODE_MODULE(serialport, init);
       ^~~~~~~~~~~
      ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
       NODE_MODULE(serialport, init);
                               ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
             (node::addon_register_func) (regfunc),                          \
                                          ^~~~~~~
      ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
       NODE_MODULE(serialport, init);
       ^~~~~~~~~~~
      make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
      gyp ERR! build error 
      gyp ERR! stack Error: `make` failed with exit code: 2
      gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
      gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
      gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
      gyp ERR! System Linux 4.15.0-91-generic
      gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
      gyp ERR! node-gyp -v v5.0.5
      gyp ERR! not ok 
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
         v8::String::Utf8Value path(info[0]->ToString());
                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                       Local<String> ToString(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                       Local<String> ToString(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
      ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
      ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
      ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
      ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
      ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
         v8::Local<v8::Object> options = info[1]->ToObject();
                                                           ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
         V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                  ^~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                       Local<Object> ToObject(Isolate* isolate) const);
                                     ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
      ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
      ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                      ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
      ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
           results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                ^
      In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                       from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                       from ../../nan/nan.h:54,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                       bool Set(Local<Value> key, Local<Value> value));
                            ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
         declarator __attribute__((deprecated(message)))
         ^~~~~~~~~~
      ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
         Call(int argc, v8::Local<v8::Value> argv[]) const {
         ^~~~
      ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
      ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
         void init(v8::Handle<v8::Object> target) {
                       ^~~~~~
      ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
      ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
         void init(v8::Handle<v8::Object> target) {
                                        ^
      ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
         void init(v8::Handle<v8::Object> target) {
                                          ^~~~~~
      ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
         void init(v8::Handle<v8::Object> target) {
                                          ^~~~~~
                                          tzset
      In file included from ../../nan/nan.h:54:0,
                       from ../src/./serialport.h:6,
                       from ../src/serialport.cpp:1:
      ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
       NODE_MODULE(serialport, init);
                               ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
             (node::addon_register_func) (regfunc),                          \
                                          ^~~~~~~
      ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
       NODE_MODULE(serialport, init);
       ^~~~~~~~~~~
      ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
       NODE_MODULE(serialport, init);
                               ^
      /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
             (node::addon_register_func) (regfunc),                          \
                                          ^~~~~~~
      ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
       NODE_MODULE(serialport, init);
       ^~~~~~~~~~~
      make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
      gyp ERR! build error 
      gyp ERR! stack Error: `make` failed with exit code: 2
      gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
      gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
      gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
      gyp ERR! System Linux 4.15.0-91-generic
      gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
      gyp ERR! node-gyp -v v5.0.5
      gyp ERR! not ok 
      
      ==========================================================================
          Finalizing installation (4/4)
      ==========================================================================
      
      Enabling autostart...
      Autostart enabled!
      Fixing directory permissions...
      
      ==========================================================================
      
          ioBroker was installed successfully
          Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
      
      ==========================================================================
      
      
      You need to re-login before doing anything else on the console!
      
      markus@Jarvis4:~$ 
      
      

      "ioBroker was installed successfully", lässt mich angesichts obiger Unstimmigkeiten etwas verunsichert zurück.

      Auch die merkwürdige url mit den 2 IP-Adressen macht wenig Sinn:

       Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
      

      Sinnvoller wäre

      http://192.168.178.74:8081
      

      Wenn ich diese URL aufrufe, komme ich tatsächlich in die initiale Konfiguration von ioBroker.

      Meine Frage: habe ich nun trotz obiger Umstände ein stabiles System, mit dem es sich weiterzuarbeiten lohnt, oder sollte hier zunächst einiges gerade gezogen werden, bevor ich mit ioBroker durchstarten kann?

      Gruß
      Markus

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von Homoran
      #2

      @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

      Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

      bist du wirklich genau nach dieser Anleitung vorgegangen?
      Hast du alle Schritte einzeln abgearbeitet und befolgt?

      @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

      nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

      dann waren nicht alle Vorversionen deinstalliert.
      Wahrscheinlich ist eine weitere Installation über das Ubuntu-Repo aktiv und nicht nur die über das nodejs-Repo

      Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:
      die hätte dann gar nciht gestartet werden dürfen

      Bitte fange noch einmal genau nach Anleitung an und mache die purge und -v Schritte einzeln und poste jeweils das Ergebnis ohne weitergemacht zu haben

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      I 2 Antworten Letzte Antwort
      0
      • I ioMarkusBroker

        Hallo zusammen,

        ich bin neu hier und möchte mich kurz vorstellen:

        Ich heiße Markus und betreibe mein Smarthome seit 2016 per FHEM.
        Zunächst wie oft üblich auf Raspis und schließlich auf einem Intel NUC (FHEM 5.8 |intel NUC Core i3: Ubuntu 18.04 | z-Wave: Aeon Labs USB Stick | Jeelink (v3c): LaCrosse-Sensoren | DuoFern Stick: Rademacher Gurtwickler | Philips Hue Bridge | CUNX: HomeMatic, EnOcean-Pigator)

        Ich spiele schon seit längerem mit dem Gedanken ergänzend über den FHEM-Adapter iobroker einzusetzen. Leider scheitere ich derzeit an einer verkorksten node/nodejs Installation.

        Ich bin absolut kein Linux-Profi und habe mir diese beim Versuch den Alexa-Skill für FHEM ans Laufen zu bekommen, eingehandelt.

        Das Problem: node und nodejs haben unterschiedliche Versionen:

        markus@Jarvis4:~$ nodejs -v
        v10.19.0
        markus@Jarvis4:~$ node -v
        v12.14.1
        markus@Jarvis4:~$ npm -v
        6.13.4
        

        Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

        Ich vermute, dass ich es irgendwie geschafft habe, das unter meinem home/markus- Verzeichnis zu installieren, weshalb die Anleitung:

        sudo apt-get --purge remove node

        sudo apt-get --purge remove nodejs

        sudo apt-get autoremove

        sudo reboot

        nicht klappt.

        nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

        Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:

        ==========================================================================
            Installing ioBroker (3/4)
        ==========================================================================
        
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
           v8::String::Utf8Value path(info[0]->ToString());
                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                         Local<String> ToString(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                         Local<String> ToString(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
        ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
        ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
        ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
        ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
        ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
        ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
        ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                  ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
        ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
           void init(v8::Handle<v8::Object> target) {
                         ^~~~~~
        ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
        ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
           void init(v8::Handle<v8::Object> target) {
                                          ^
        ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
           void init(v8::Handle<v8::Object> target) {
                                            ^~~~~~
        ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
           void init(v8::Handle<v8::Object> target) {
                                            ^~~~~~
                                            tzset
        In file included from ../../nan/nan.h:54:0,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
         NODE_MODULE(serialport, init);
                                 ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
               (node::addon_register_func) (regfunc),                          \
                                            ^~~~~~~
        ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
         NODE_MODULE(serialport, init);
         ^~~~~~~~~~~
        ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
         NODE_MODULE(serialport, init);
                                 ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
               (node::addon_register_func) (regfunc),                          \
                                            ^~~~~~~
        ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
         NODE_MODULE(serialport, init);
         ^~~~~~~~~~~
        make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
        gyp ERR! build error 
        gyp ERR! stack Error: `make` failed with exit code: 2
        gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
        gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
        gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
        gyp ERR! System Linux 4.15.0-91-generic
        gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
        gyp ERR! node-gyp -v v5.0.5
        gyp ERR! not ok 
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:41:48: error: no matching function for call to \u2018v8::Value::ToString()\u2019
           v8::String::Utf8Value path(info[0]->ToString());
                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note: candidate: v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2572:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note: candidate: v8::Local<v8::String> v8::Value::ToString(v8::Isolate*) const
                         Local<String> ToString(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2588:31: note:   candidate expects 1 argument, 0 provided
                         Local<String> ToString(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:48:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterOpen(uv_work_t*)\u2019:
        ../src/serialport.cpp:95:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:113:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterUpdate(uv_work_t*)\u2019:
        ../src/serialport.cpp:150:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterClose(uv_work_t*)\u2019:
        ../src/serialport.cpp:188:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterFlush(uv_work_t*)\u2019:
        ../src/serialport.cpp:231:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)\u2019:
        ../src/serialport.cpp:250:53: error: no matching function for call to \u2018v8::Value::ToObject()\u2019
           v8::Local<v8::Object> options = info[1]->ToObject();
                                                             ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63:0,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note: candidate: v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const
           V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(
                                                    ^~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2576:44: note:   candidate expects 1 argument, 0 provided
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note: candidate: v8::Local<v8::Object> v8::Value::ToObject(v8::Isolate*) const
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:2590:31: note:   candidate expects 1 argument, 0 provided
                         Local<Object> ToObject(Isolate* isolate) const);
                                       ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterSet(uv_work_t*)\u2019:
        ../src/serialport.cpp:285:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterGet(uv_work_t*)\u2019:
        ../src/serialport.cpp:329:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:330:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:331:96: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                        ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:336:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterGetBaudRate(uv_work_t*)\u2019:
        ../src/serialport.cpp:378:106: warning: \u2018bool v8::Object::Set(v8::Local<v8::Value>, v8::Local<v8::Value>)\u2019 is deprecated: Use maybe version [-Wdeprecated-declarations]
             results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                  ^
        In file included from /home/markus/.cache/node-gyp/12.14.1/include/node/v8-internal.h:14:0,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:25,
                         from /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:63,
                         from ../../nan/nan.h:54,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8.h:3403:22: note: declared here
                         bool Set(Local<Value> key, Local<Value> value));
                              ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/v8config.h:311:3: note: in definition of macro \u2018V8_DEPRECATED\u2019
           declarator __attribute__((deprecated(message)))
           ^~~~~~~~~~
        ../src/serialport.cpp:383:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740:3: note: declared here
           Call(int argc, v8::Local<v8::Value> argv[]) const {
           ^~~~
        ../src/serialport.cpp: In function \u2018void EIO_AfterDrain(uv_work_t*)\u2019:
        ../src/serialport.cpp:424:30: warning: \u2018v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const\u2019 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:1740: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 \u2018init\u2019 declared void
           void init(v8::Handle<v8::Object> target) {
                         ^~~~~~
        ../src/serialport.cpp:460:17: error: \u2018Handle\u2019 is not a member of \u2018v8\u2019
        ../src/serialport.cpp:460:34: error: expected primary-expression before \u2018>\u2019 token
           void init(v8::Handle<v8::Object> target) {
                                          ^
        ../src/serialport.cpp:460:36: error: \u2018target\u2019 was not declared in this scope
           void init(v8::Handle<v8::Object> target) {
                                            ^~~~~~
        ../src/serialport.cpp:460:36: note: suggested alternative: \u2018tzset\u2019
           void init(v8::Handle<v8::Object> target) {
                                            ^~~~~~
                                            tzset
        In file included from ../../nan/nan.h:54:0,
                         from ../src/./serialport.h:6,
                         from ../src/serialport.cpp:1:
        ../src/serialport.cpp:485:25: error: \u2018init\u2019 was not declared in this scope
         NODE_MODULE(serialport, init);
                                 ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
               (node::addon_register_func) (regfunc),                          \
                                            ^~~~~~~
        ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
         NODE_MODULE(serialport, init);
         ^~~~~~~~~~~
        ../src/serialport.cpp:485:25: note: suggested alternative: \u2018int\u2019
         NODE_MODULE(serialport, init);
                                 ^
        /home/markus/.cache/node-gyp/12.14.1/include/node/node.h:560:36: note: in definition of macro \u2018NODE_MODULE_X\u2019
               (node::addon_register_func) (regfunc),                          \
                                            ^~~~~~~
        ../src/serialport.cpp:485:1: note: in expansion of macro \u2018NODE_MODULE\u2019
         NODE_MODULE(serialport, init);
         ^~~~~~~~~~~
        make: *** [Release/obj.target/serialport/src/serialport.o] Error 1
        gyp ERR! build error 
        gyp ERR! stack Error: `make` failed with exit code: 2
        gyp ERR! stack     at ChildProcess.onExit (/home/markus/.nvm/versions/node/v12.14.1/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
        gyp ERR! stack     at ChildProcess.emit (events.js:223:5)
        gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
        gyp ERR! System Linux 4.15.0-91-generic
        gyp ERR! command "/home/markus/.nvm/versions/node/v12.14.1/bin/node" "/home/markus/.nvm/versions/node/v12.14.1/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 v12.14.1
        gyp ERR! node-gyp -v v5.0.5
        gyp ERR! not ok 
        
        ==========================================================================
            Finalizing installation (4/4)
        ==========================================================================
        
        Enabling autostart...
        Autostart enabled!
        Fixing directory permissions...
        
        ==========================================================================
        
            ioBroker was installed successfully
            Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
        
        ==========================================================================
        
        
        You need to re-login before doing anything else on the console!
        
        markus@Jarvis4:~$ 
        
        

        "ioBroker was installed successfully", lässt mich angesichts obiger Unstimmigkeiten etwas verunsichert zurück.

        Auch die merkwürdige url mit den 2 IP-Adressen macht wenig Sinn:

         Open http://192.168.178.74 172.17.0.1:8081 in a browser and start configuring!
        

        Sinnvoller wäre

        http://192.168.178.74:8081
        

        Wenn ich diese URL aufrufe, komme ich tatsächlich in die initiale Konfiguration von ioBroker.

        Meine Frage: habe ich nun trotz obiger Umstände ein stabiles System, mit dem es sich weiterzuarbeiten lohnt, oder sollte hier zunächst einiges gerade gezogen werden, bevor ich mit ioBroker durchstarten kann?

        Gruß
        Markus

        meuteM Online
        meuteM Online
        meute
        schrieb am zuletzt editiert von meute
        #3

        Gelöscht...

        fraenk for friends Code: MATF103

        I 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

          Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

          bist du wirklich genau nach dieser Anleitung vorgegangen?
          Hast du alle Schritte einzeln abgearbeitet und befolgt?

          @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

          nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

          dann waren nicht alle Vorversionen deinstalliert.
          Wahrscheinlich ist eine weitere Installation über das Ubuntu-Repo aktiv und nicht nur die über das nodejs-Repo

          Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:
          die hätte dann gar nciht gestartet werden dürfen

          Bitte fange noch einmal genau nach Anleitung an und mache die purge und -v Schritte einzeln und poste jeweils das Ergebnis ohne weitergemacht zu haben

          I Offline
          I Offline
          ioMarkusBroker
          schrieb am zuletzt editiert von
          #4

          @Homoran vielen Dank für deine Antwort!

          Ich habe genau nach Anleitung gearbeitet (inkl. der Reboots dazwischen) und irgendwie tut es ja nun auch.

          Ich zögere ein wenig, das jetzt alles kaputt zu machen, nur um hier die einzelnen Zwischenschritte noch mal posten zu können.

          Ist es wirklich Pflicht, dass node und nodejs dieselbe Version haben?

          Gruß
          Markus

          HomoranH 1 Antwort Letzte Antwort
          0
          • I ioMarkusBroker

            @Homoran vielen Dank für deine Antwort!

            Ich habe genau nach Anleitung gearbeitet (inkl. der Reboots dazwischen) und irgendwie tut es ja nun auch.

            Ich zögere ein wenig, das jetzt alles kaputt zu machen, nur um hier die einzelnen Zwischenschritte noch mal posten zu können.

            Ist es wirklich Pflicht, dass node und nodejs dieselbe Version haben?

            Gruß
            Markus

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von
            #5

            @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

            dass node und nodejs dieselbe Version haben?

            das ist nicht das "echte" Problem sondern nur ein Hinweis darauf, dass zwei verschiedene node-Installationen existieren.
            Kluge Köpfe haben gedacht es sei dann sinnvoll beide auf die gleiche Version zu bringen. Ist es aber nicht - man erkennt dann nur nicht mehr so einfach dass es zwei node.js installationen gibt, was die Suche nach der Ursache nur schwerer macht.

            Zwei Installationen parallel machen definitiv Probleme.

            @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

            Ich zögere ein wenig, das jetzt alles kaputt zu machen, nur um hier die einzelnen Zwischenschritte noch mal posten zu können.

            Das ist deshalb die falsche Einstellung dazu

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • meuteM meute

              Gelöscht...

              I Offline
              I Offline
              ioMarkusBroker
              schrieb am zuletzt editiert von
              #6

              @meute said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

              ich häng mich mal hier ran, weil ich das gleiche Problem habe.

              Ich würde mal nicht sagen, dass das gleiche Problem ist.
              Bei mir geht es primär um node/nodejs. Während die doppelte url einfach zu umgehen ist. Ich finde es daher nicht die feine Englische, hier einfach meinen thread zu hijacken.

              Gruß
              Markus

              meuteM 1 Antwort Letzte Antwort
              0
              • I ioMarkusBroker

                @meute said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                ich häng mich mal hier ran, weil ich das gleiche Problem habe.

                Ich würde mal nicht sagen, dass das gleiche Problem ist.
                Bei mir geht es primär um node/nodejs. Während die doppelte url einfach zu umgehen ist. Ich finde es daher nicht die feine Englische, hier einfach meinen thread zu hijacken.

                Gruß
                Markus

                meuteM Online
                meuteM Online
                meute
                schrieb am zuletzt editiert von meute
                #7

                Gelöscht...

                fraenk for friends Code: MATF103

                1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                  Und ich bekomme trotz der Anleitung hier https://www.iobroker.net/#de/documentation/install/linux.md node und npm nicht deinstalliert.

                  bist du wirklich genau nach dieser Anleitung vorgegangen?
                  Hast du alle Schritte einzeln abgearbeitet und befolgt?

                  @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                  nach dem Reboot zeigen die -v Befehle nachwievor eine Version an.

                  dann waren nicht alle Vorversionen deinstalliert.
                  Wahrscheinlich ist eine weitere Installation über das Ubuntu-Repo aktiv und nicht nur die über das nodejs-Repo

                  Die eigentliche Installation von ioBroker bringt dann auch prompt merkwürdige Compilerfehler:
                  die hätte dann gar nciht gestartet werden dürfen

                  Bitte fange noch einmal genau nach Anleitung an und mache die purge und -v Schritte einzeln und poste jeweils das Ergebnis ohne weitergemacht zu haben

                  I Offline
                  I Offline
                  ioMarkusBroker
                  schrieb am zuletzt editiert von
                  #8

                  Hallo @Homoran

                  So jetzt noch mal die Schritte im Einzelnen:

                  Ausgangspunkt:

                  markus@Jarvis4:~$ nodejs -v
                  v10.20.0
                  markus@Jarvis4:~$ npm -v
                  6.13.4
                  markus@Jarvis4:~$ node -v
                  v12.14.1
                  
                  

                  Jetzt:

                  markus@Jarvis4:~$ sudo apt-get --purge remove node
                  [sudo] Passwort für markus: 
                  Paketlisten werden gelesen... Fertig
                  Abhängigkeitsbaum wird aufgebaut.       
                  Statusinformationen werden eingelesen.... Fertig
                  E: Paket node kann nicht gefunden werden.
                  
                  

                  Ergebnis:

                  markus@Jarvis4:~$ node -v
                  v12.14.1
                  
                  

                  Wie bekomme ich node nun los?

                  Gruß
                  Markus

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • I ioMarkusBroker

                    Hallo @Homoran

                    So jetzt noch mal die Schritte im Einzelnen:

                    Ausgangspunkt:

                    markus@Jarvis4:~$ nodejs -v
                    v10.20.0
                    markus@Jarvis4:~$ npm -v
                    6.13.4
                    markus@Jarvis4:~$ node -v
                    v12.14.1
                    
                    

                    Jetzt:

                    markus@Jarvis4:~$ sudo apt-get --purge remove node
                    [sudo] Passwort für markus: 
                    Paketlisten werden gelesen... Fertig
                    Abhängigkeitsbaum wird aufgebaut.       
                    Statusinformationen werden eingelesen.... Fertig
                    E: Paket node kann nicht gefunden werden.
                    
                    

                    Ergebnis:

                    markus@Jarvis4:~$ node -v
                    v12.14.1
                    
                    

                    Wie bekomme ich node nun los?

                    Gruß
                    Markus

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #9

                    @ioMarkusBroker sagte:

                    Wie bekomme ich node nun los?

                    Was ergibt ?

                    which node
                    ls -l /usr/bin/node*
                    ls -l /usr/local/bin/node*
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • I Offline
                      I Offline
                      ioMarkusBroker
                      schrieb am zuletzt editiert von
                      #10

                      Hallo Paul,

                      Danke für deine Antwort.
                      Hier meine Antworten:

                      markus@Jarvis4:~$ which node
                      /home/markus/.nvm/versions/node/v12.14.1/bin/node
                      
                      markus@Jarvis4:~$ ls -l /usr/bin/node*
                      -rwxr-xr-x 1 root root 41224832 Apr  8 12:34 /usr/bin/node
                      lrwxrwxrwx 1 root root       24 Apr  4 12:09 /usr/bin/nodejs -> /etc/alternatives/nodejs
                      
                      markus@Jarvis4:~$ ls -l /usr/local/bin/node*
                      ls: Zugriff auf '/usr/local/bin/node*' nicht möglich: Datei oder Verzeichnis nicht gefunden
                      

                      Als absoluter Linux-Laie, vermute ich mal, dass ich es irgendwie geschafft habe, nodejs im home meines users "markus" zu installieren?!

                      Was nun?

                      Gruß
                      Markus

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • I ioMarkusBroker

                        Hallo Paul,

                        Danke für deine Antwort.
                        Hier meine Antworten:

                        markus@Jarvis4:~$ which node
                        /home/markus/.nvm/versions/node/v12.14.1/bin/node
                        
                        markus@Jarvis4:~$ ls -l /usr/bin/node*
                        -rwxr-xr-x 1 root root 41224832 Apr  8 12:34 /usr/bin/node
                        lrwxrwxrwx 1 root root       24 Apr  4 12:09 /usr/bin/nodejs -> /etc/alternatives/nodejs
                        
                        markus@Jarvis4:~$ ls -l /usr/local/bin/node*
                        ls: Zugriff auf '/usr/local/bin/node*' nicht möglich: Datei oder Verzeichnis nicht gefunden
                        

                        Als absoluter Linux-Laie, vermute ich mal, dass ich es irgendwie geschafft habe, nodejs im home meines users "markus" zu installieren?!

                        Was nun?

                        Gruß
                        Markus

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #11

                        @ioMarkusBroker sagte:

                        nodejs im home meines users "markus" zu installieren?!

                        Ja, anscheinend mit nvm ?
                        Was ergibt ?

                        /usr/bin/node -v
                        nvm ls
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        I 1 Antwort Letzte Antwort
                        0
                        • paul53P paul53

                          @ioMarkusBroker sagte:

                          nodejs im home meines users "markus" zu installieren?!

                          Ja, anscheinend mit nvm ?
                          Was ergibt ?

                          /usr/bin/node -v
                          nvm ls
                          
                          I Offline
                          I Offline
                          ioMarkusBroker
                          schrieb am zuletzt editiert von
                          #12

                          @paul53 said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                          /usr/bin/node -v

                          Hallo Paul,

                          hier das Ergebnis:

                          markus@Jarvis4:~$ /usr/bin/node -v
                          v10.20.0
                          markus@Jarvis4:~$ nvm ls
                          ->     v12.14.1
                                   system
                          default -> 12.14.1 (-> v12.14.1)
                          node -> stable (-> v12.14.1) (default)
                          stable -> 12.14 (-> v12.14.1) (default)
                          iojs -> N/A (default)
                          unstable -> N/A (default)
                          lts/* -> lts/erbium (-> v12.14.1)
                          lts/argon -> v4.9.1 (-> N/A)
                          lts/boron -> v6.17.1 (-> N/A)
                          lts/carbon -> v8.17.0 (-> N/A)
                          lts/dubnium -> v10.18.1 (-> N/A)
                          lts/erbium -> v12.14.1
                          

                          Gruß
                          Markus

                          Thomas BraunT 1 Antwort Letzte Antwort
                          0
                          • I ioMarkusBroker

                            @paul53 said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                            /usr/bin/node -v

                            Hallo Paul,

                            hier das Ergebnis:

                            markus@Jarvis4:~$ /usr/bin/node -v
                            v10.20.0
                            markus@Jarvis4:~$ nvm ls
                            ->     v12.14.1
                                     system
                            default -> 12.14.1 (-> v12.14.1)
                            node -> stable (-> v12.14.1) (default)
                            stable -> 12.14 (-> v12.14.1) (default)
                            iojs -> N/A (default)
                            unstable -> N/A (default)
                            lts/* -> lts/erbium (-> v12.14.1)
                            lts/argon -> v4.9.1 (-> N/A)
                            lts/boron -> v6.17.1 (-> N/A)
                            lts/carbon -> v8.17.0 (-> N/A)
                            lts/dubnium -> v10.18.1 (-> N/A)
                            lts/erbium -> v12.14.1
                            

                            Gruß
                            Markus

                            Thomas BraunT Online
                            Thomas BraunT Online
                            Thomas Braun
                            Most Active
                            schrieb am zuletzt editiert von
                            #13

                            @ioMarkusBroker Versuch mal

                            nvm uninstall node
                            

                            Linux-Werkzeugkasten:
                            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                            NodeJS Fixer Skript:
                            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                            I 1 Antwort Letzte Antwort
                            0
                            • eric2905E Offline
                              eric2905E Offline
                              eric2905
                              schrieb am zuletzt editiert von
                              #14

                              Hi,

                              [Ironie Ein]

                              @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                              Ich habe genau nach Anleitung gearbeitet (inkl. der Reboots dazwischen) und irgendwie tut es ja nun auch.

                              Dann müssen wir uns wohl nochmal die Doku ansehen ... denn dort muss ja irgendwo was von „Node zusätzlich mit nvm installieren“ stehen 😜

                              [Ironie Aus]

                              Sorry, musste jetzt einfach raus 😁

                              Gruß,
                              Eric

                              Roses are red, violets are blue,

                              if I listen to metal, my neighbours do too

                              I 1 Antwort Letzte Antwort
                              0
                              • eric2905E eric2905

                                Hi,

                                [Ironie Ein]

                                @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                Ich habe genau nach Anleitung gearbeitet (inkl. der Reboots dazwischen) und irgendwie tut es ja nun auch.

                                Dann müssen wir uns wohl nochmal die Doku ansehen ... denn dort muss ja irgendwo was von „Node zusätzlich mit nvm installieren“ stehen 😜

                                [Ironie Aus]

                                Sorry, musste jetzt einfach raus 😁

                                Gruß,
                                Eric

                                I Offline
                                I Offline
                                ioMarkusBroker
                                schrieb am zuletzt editiert von
                                #15

                                @eric2905 said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                Hi,

                                [Ironie Ein]

                                @ioMarkusBroker sagte in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                Ich habe genau nach Anleitung gearbeitet (inkl. der Reboots dazwischen) und irgendwie tut es ja nun auch.

                                Dann müssen wir uns wohl nochmal die Doku ansehen ... denn dort muss ja irgendwo was von „Node zusätzlich mit nvm installieren“ stehen 😜

                                [Ironie Aus]

                                Sorry, musste jetzt einfach raus 😁

                                Gruß,
                                Eric

                                Hallo Eric,

                                ganz oben im Thread habe ich geschrieben, dass ich mir die node/nodejs Installation vermutlich beim Versuch die Alexa-Anbindung für FHEM hinzubekommen, verstrubelt habe.

                                Die Doku zum Deinstallieren der Komponenten im Zusammenhang von ioBroker habe ich sehr wohl schrittweise befolgt.
                                Nur, dass da nichts von "nvm" steht.

                                Das musste jetzt auch raus ;-)

                                Gruß
                                Markus

                                1 Antwort Letzte Antwort
                                0
                                • Thomas BraunT Thomas Braun

                                  @ioMarkusBroker Versuch mal

                                  nvm uninstall node
                                  
                                  I Offline
                                  I Offline
                                  ioMarkusBroker
                                  schrieb am zuletzt editiert von
                                  #16

                                  @Thomas-Braun said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                  @ioMarkusBroker Versuch mal

                                  nvm uninstall node
                                  

                                  Hallo Thomas,

                                  Danke für den Tipp!
                                  Ich habe zwischenzeitlich schon den halben ioBroker Kurs von "haus-automatisierung.com" durchgearbeitet und entsprechen schon viel im ioBroker eingerichtet.

                                  Bisher tut alles auch wunderbar.

                                  Ich habe daher mittlerweile die Angst, wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.
                                  Dumm gefragt: wenn ioBroker so tut, kann ich node nicht einfach so lassen?

                                  Gruß
                                  Markus

                                  Thomas BraunT paul53P 2 Antworten Letzte Antwort
                                  0
                                  • I ioMarkusBroker

                                    @Thomas-Braun said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                    @ioMarkusBroker Versuch mal

                                    nvm uninstall node
                                    

                                    Hallo Thomas,

                                    Danke für den Tipp!
                                    Ich habe zwischenzeitlich schon den halben ioBroker Kurs von "haus-automatisierung.com" durchgearbeitet und entsprechen schon viel im ioBroker eingerichtet.

                                    Bisher tut alles auch wunderbar.

                                    Ich habe daher mittlerweile die Angst, wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.
                                    Dumm gefragt: wenn ioBroker so tut, kann ich node nicht einfach so lassen?

                                    Gruß
                                    Markus

                                    Thomas BraunT Online
                                    Thomas BraunT Online
                                    Thomas Braun
                                    Most Active
                                    schrieb am zuletzt editiert von Thomas Braun
                                    #17

                                    @ioMarkusBroker said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                    Dumm gefragt: wenn ioBroker so tut, kann ich node nicht einfach so lassen?

                                    Würde ich nicht machen. Das komische Konstrukt führt früher oder später zu Problemen. Mach es sauber oder mach es neu (dann aber auch sauber).

                                    Wenn du zuvor den ioBroker stoppst und dann nodejs richtig installierst passiert mit der ioBroker-Installation nix weiter.

                                    Linux-Werkzeugkasten:
                                    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                                    NodeJS Fixer Skript:
                                    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                                    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                                    1 Antwort Letzte Antwort
                                    0
                                    • I ioMarkusBroker

                                      @Thomas-Braun said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                      @ioMarkusBroker Versuch mal

                                      nvm uninstall node
                                      

                                      Hallo Thomas,

                                      Danke für den Tipp!
                                      Ich habe zwischenzeitlich schon den halben ioBroker Kurs von "haus-automatisierung.com" durchgearbeitet und entsprechen schon viel im ioBroker eingerichtet.

                                      Bisher tut alles auch wunderbar.

                                      Ich habe daher mittlerweile die Angst, wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.
                                      Dumm gefragt: wenn ioBroker so tut, kann ich node nicht einfach so lassen?

                                      Gruß
                                      Markus

                                      paul53P Offline
                                      paul53P Offline
                                      paul53
                                      schrieb am zuletzt editiert von
                                      #18

                                      @ioMarkusBroker sagte:

                                      wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.

                                      Du hast eine passende Version.

                                      markus@Jarvis4:~$ /usr/bin/node -v
                                      v10.20.0
                                      

                                      Es pfuscht allerdings nvm dazwischen. Versuche mal

                                      nvm deactivate
                                      node -v
                                      

                                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                      I 2 Antworten Letzte Antwort
                                      0
                                      • paul53P paul53

                                        @ioMarkusBroker sagte:

                                        wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.

                                        Du hast eine passende Version.

                                        markus@Jarvis4:~$ /usr/bin/node -v
                                        v10.20.0
                                        

                                        Es pfuscht allerdings nvm dazwischen. Versuche mal

                                        nvm deactivate
                                        node -v
                                        
                                        I Offline
                                        I Offline
                                        ioMarkusBroker
                                        schrieb am zuletzt editiert von
                                        #19

                                        @paul53 said in Installation-Problem auf Ubuntu 18.04 wegen node/nodejs:

                                        @ioMarkusBroker sagte:

                                        wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.

                                        Es pfuscht allerdings nvm dazwischen. Versuche mal

                                        nvm deactivate
                                        node -v
                                        

                                        Hallo Paul,

                                        das hat tatsächlich geholfen:

                                        markus@Jarvis4:~$ node -v
                                        v12.14.1
                                        markus@Jarvis4:~$ nvm deactivate
                                        /home/markus/.nvm/*/bin removed from ${PATH}
                                        markus@Jarvis4:~$ node -v
                                        v10.20.0
                                        

                                        Cool :-)
                                        Vielen Dank!

                                        Gruß
                                        Markus

                                        1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @ioMarkusBroker sagte:

                                          wenn ich jetzt node deinstalliere, dass dann die ganze Arbeit futsch ist.

                                          Du hast eine passende Version.

                                          markus@Jarvis4:~$ /usr/bin/node -v
                                          v10.20.0
                                          

                                          Es pfuscht allerdings nvm dazwischen. Versuche mal

                                          nvm deactivate
                                          node -v
                                          
                                          I Offline
                                          I Offline
                                          ioMarkusBroker
                                          schrieb am zuletzt editiert von
                                          #20

                                          @paul53

                                          Hallo Paul,

                                          nvm deactivate
                                          

                                          scheint nur temporär zu wirken.
                                          Ich vermute, dass es nach einem Neustart des Systems wieder aktiv ist.

                                          Wie bekomme ich es denn endgültig los?

                                          Gruß
                                          Markus

                                          paul53P 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          941

                                          Online

                                          32.5k

                                          Benutzer

                                          81.6k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe