Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Jeelink Adapter lässt sich nicht installieren

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    611

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    2.0k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    882

Jeelink Adapter lässt sich nicht installieren

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
19 Beiträge 5 Kommentatoren 1.3k Aufrufe 6 Beobachtet
  • Ä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.
  • J Offline
    J Offline
    Joshude
    schrieb am zuletzt editiert von
    #10

    @thomas-braun said in Jeelink Adapter lässt sich nicht installieren:

    Wenigstens aus Versehen dann sauber installiert?

    which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
    
    which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
    /usr/bin/nodejs
    /usr/local/bin/node
    /usr/local/bin/npm
    v14.17.4
    v14.17.4
    7.20.5
    nodejs:
      Installed: 14.17.4-1nodesource1
      Candidate: 14.17.4-1nodesource1
      Version table:
     *** 14.17.4-1nodesource1 500
            500 https://deb.nodesource.com/node_14.x buster/main armhf Packages
            100 /var/lib/dpkg/status
         12.22.4-1nodesource1 500
            500 https://deb.nodesource.com/node_12.x buster/main armhf Packages
         10.24.1-1nodesource1 500
            500 https://deb.nodesource.com/node_10.x buster/main armhf Packages
         10.24.0~dfsg-1~deb10u1 500
            500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
    

    Ich hoffe?! :) Oder bin ich irgendwo falsch abgebogen? Irgendwann war ich nämlich tatsächlich etwas ver(w)irrt.

    Thomas BraunT 1 Antwort Letzte Antwort
    0
    • J Joshude

      @thomas-braun said in Jeelink Adapter lässt sich nicht installieren:

      Wenigstens aus Versehen dann sauber installiert?

      which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
      
      which nodejs node npm && nodejs -v && node -v && npm -v && apt policy nodejs
      /usr/bin/nodejs
      /usr/local/bin/node
      /usr/local/bin/npm
      v14.17.4
      v14.17.4
      7.20.5
      nodejs:
        Installed: 14.17.4-1nodesource1
        Candidate: 14.17.4-1nodesource1
        Version table:
       *** 14.17.4-1nodesource1 500
              500 https://deb.nodesource.com/node_14.x buster/main armhf Packages
              100 /var/lib/dpkg/status
           12.22.4-1nodesource1 500
              500 https://deb.nodesource.com/node_12.x buster/main armhf Packages
           10.24.1-1nodesource1 500
              500 https://deb.nodesource.com/node_10.x buster/main armhf Packages
           10.24.0~dfsg-1~deb10u1 500
              500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages
      

      Ich hoffe?! :) Oder bin ich irgendwo falsch abgebogen? Irgendwann war ich nämlich tatsächlich etwas ver(w)irrt.

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

      @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

      Oder bin ich irgendwo falsch abgebogen?

      Ja, falsch abgebogen.
      Schau in meiner Signatur wie man den richtigen Weg wieder findet.

      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

      J 1 Antwort Letzte Antwort
      1
      • Thomas BraunT Thomas Braun

        @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

        Oder bin ich irgendwo falsch abgebogen?

        Ja, falsch abgebogen.
        Schau in meiner Signatur wie man den richtigen Weg wieder findet.

        J Offline
        J Offline
        Joshude
        schrieb am zuletzt editiert von
        #12

        @thomas-braun Den Link hab ich auch just gesehen und angeklickt. Kann ich das von meinem Stand aus jetzt "einfach" einmal durchgehen?

        Thomas BraunT 1 Antwort Letzte Antwort
        0
        • J Joshude

          @thomas-braun Den Link hab ich auch just gesehen und angeklickt. Kann ich das von meinem Stand aus jetzt "einfach" einmal durchgehen?

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

          @joshude
          Eigentlich ist genau dein Fall da erklärt. Siehe das zweite Posting im How-To.

          Dürfte im übrigen bei @ChrizZz zumindest ein ähnlicher Fehler im Setup von nodeJS sein.

          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

          J 1 Antwort Letzte Antwort
          0
          • Thomas BraunT Thomas Braun

            @joshude
            Eigentlich ist genau dein Fall da erklärt. Siehe das zweite Posting im How-To.

            Dürfte im übrigen bei @ChrizZz zumindest ein ähnlicher Fehler im Setup von nodeJS sein.

            J Offline
            J Offline
            Joshude
            schrieb am zuletzt editiert von
            #14

            @thomas-braun Danke, hab ich auch direkt nach meinem Post gesehen. Augen auf :)

            Leider bekomme ich den Adapter weiterhin nicht installiert:

            npm install --unsafe-perm iobroker.jeelink
            
            > @serialport/bindings@2.0.8 install /home/pi/node_modules/@serialport/bindings
            > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
            
            prebuild-install WARN install No prebuilt binaries found (target=14.17.4 runtime=node arch=arm libc= platform=linux)
            make: Entering directory '/home/pi/node_modules/@serialport/bindings/build'
              CXX(target) Release/obj.target/bindings/src/serialport.o
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
                                                                                 ^~~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
                                                                                   ^~~~~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
                                                                                  ^~~~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
                                                                                  ^~~~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
                                                                                ^~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
                                                                                ^~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
            ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                 results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                            ^
            In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                             from ../../../nan/nan.h:58,
                             from ../src/./serialport.h:6,
                             from ../src/serialport.cpp:1:
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
            ../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                 results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                            ^
            In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                             from ../../../nan/nan.h:58,
                             from ../src/./serialport.h:6,
                             from ../src/serialport.cpp:1:
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
            ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                 results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                            ^
            In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                             from ../../../nan/nan.h:58,
                             from ../src/./serialport.h:6,
                             from ../src/serialport.cpp:1:
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
                                                                                        ^~~~~~~~~~~~~~~~~~~~
            ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
            ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
                 results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                      ^
            In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                             from ../../../nan/nan.h:58,
                             from ../src/./serialport.h:6,
                             from ../src/serialport.cpp:1:
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
               V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                 ^~~
            /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
            ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
            ../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
               uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
                                                                                  ^~~~~~~~~~~~~~
            ../src/serialport.cpp: At global scope:
            ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
             SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
                                        ^
            ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
             SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
                                          ^
            In file included from ../../../nan/nan.h:58,
                             from ../src/./serialport.h:6,
                             from ../src/serialport.cpp:1:
            /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:758:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
                   (node::addon_register_func) (regfunc),                          \
                                                       ^
            /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:792:3: note: in expansion of macro ‘NODE_MODULE_X’
               NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
               ^~~~~~~~~~~~~
            ../src/serialport.cpp:483:1: note: in expansion of macro ‘NODE_MODULE’
             NODE_MODULE(serialport, init);
             ^~~~~~~~~~~
            make: *** [bindings.target.mk:112: Release/obj.target/bindings/src/serialport.o] Error 1
            make: Leaving directory '/home/pi/node_modules/@serialport/bindings/build'
            gyp ERR! build error 
            gyp ERR! stack Error: `make` failed with exit code: 2
            gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
            gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
            gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
            gyp ERR! System Linux 5.10.52-v7+
            gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
            gyp ERR! cwd /home/pi/node_modules/@serialport/bindings
            gyp ERR! node -v v14.17.4
            gyp ERR! node-gyp -v v5.1.0
            gyp ERR! not ok 
            npm WARN enoent ENOENT: no such file or directory, open '/home/pi/package.json'
            npm WARN pi No description
            npm WARN pi No repository field.
            npm WARN pi No README data
            npm WARN pi No license field.
            
            npm ERR! code ELIFECYCLE
            npm ERR! errno 1
            npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
            npm ERR! Exit status 1
            npm ERR! 
            npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
            npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
            
            npm ERR! A complete log of this run can be found in:
            npm ERR!     /home/pi/.npm/_logs/2021-08-11T13_37_57_009Z-debug.log
            

            Die Versionsabfrage liefert nun - ich glaube korrekterweise - folgendes:

            /usr/bin/nodejs
            /usr/bin/node
            /usr/bin/npm
            v14.17.4
            v14.17.4
            6.14.14
            
            
            Thomas BraunT 1 Antwort Letzte Antwort
            0
            • J Joshude

              @thomas-braun Danke, hab ich auch direkt nach meinem Post gesehen. Augen auf :)

              Leider bekomme ich den Adapter weiterhin nicht installiert:

              npm install --unsafe-perm iobroker.jeelink
              
              > @serialport/bindings@2.0.8 install /home/pi/node_modules/@serialport/bindings
              > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
              
              prebuild-install WARN install No prebuilt binaries found (target=14.17.4 runtime=node arch=arm libc= platform=linux)
              make: Entering directory '/home/pi/node_modules/@serialport/bindings/build'
                CXX(target) Release/obj.target/bindings/src/serialport.o
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
                                                                                   ^~~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
                                                                                     ^~~~~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
                                                                                    ^~~~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
                                                                                    ^~~~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
                                                                                  ^~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
                                                                                  ^~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
              ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                   results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                              ^
              In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                               from ../../../nan/nan.h:58,
                               from ../src/./serialport.h:6,
                               from ../src/serialport.cpp:1:
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
              ../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                   results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                              ^
              In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                               from ../../../nan/nan.h:58,
                               from ../src/./serialport.h:6,
                               from ../src/serialport.cpp:1:
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
              ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                   results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                              ^
              In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                               from ../../../nan/nan.h:58,
                               from ../src/./serialport.h:6,
                               from ../src/serialport.cpp:1:
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
                                                                                          ^~~~~~~~~~~~~~~~~~~~
              ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
              ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
                   results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                        ^
              In file included from /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:67,
                               from ../../../nan/nan.h:58,
                               from ../src/./serialport.h:6,
                               from ../src/serialport.cpp:1:
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                 V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                   ^~~
              /home/pi/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
              ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
              ../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                 uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
                                                                                    ^~~~~~~~~~~~~~
              ../src/serialport.cpp: At global scope:
              ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
               SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
                                          ^
              ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
               SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
                                            ^
              In file included from ../../../nan/nan.h:58,
                               from ../src/./serialport.h:6,
                               from ../src/serialport.cpp:1:
              /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:758:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
                     (node::addon_register_func) (regfunc),                          \
                                                         ^
              /home/pi/.cache/node-gyp/14.17.4/include/node/node.h:792:3: note: in expansion of macro ‘NODE_MODULE_X’
                 NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
                 ^~~~~~~~~~~~~
              ../src/serialport.cpp:483:1: note: in expansion of macro ‘NODE_MODULE’
               NODE_MODULE(serialport, init);
               ^~~~~~~~~~~
              make: *** [bindings.target.mk:112: Release/obj.target/bindings/src/serialport.o] Error 1
              make: Leaving directory '/home/pi/node_modules/@serialport/bindings/build'
              gyp ERR! build error 
              gyp ERR! stack Error: `make` failed with exit code: 2
              gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
              gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
              gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
              gyp ERR! System Linux 5.10.52-v7+
              gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
              gyp ERR! cwd /home/pi/node_modules/@serialport/bindings
              gyp ERR! node -v v14.17.4
              gyp ERR! node-gyp -v v5.1.0
              gyp ERR! not ok 
              npm WARN enoent ENOENT: no such file or directory, open '/home/pi/package.json'
              npm WARN pi No description
              npm WARN pi No repository field.
              npm WARN pi No README data
              npm WARN pi No license field.
              
              npm ERR! code ELIFECYCLE
              npm ERR! errno 1
              npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
              npm ERR! Exit status 1
              npm ERR! 
              npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
              npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
              
              npm ERR! A complete log of this run can be found in:
              npm ERR!     /home/pi/.npm/_logs/2021-08-11T13_37_57_009Z-debug.log
              

              Die Versionsabfrage liefert nun - ich glaube korrekterweise - folgendes:

              /usr/bin/nodejs
              /usr/bin/node
              /usr/bin/npm
              v14.17.4
              v14.17.4
              6.14.14
              
              
              Thomas BraunT Online
              Thomas BraunT Online
              Thomas Braun
              Most Active
              schrieb am zuletzt editiert von Thomas Braun
              #15

              @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

              npm install --unsafe-perm iobroker.jeelink

              Jede Wette du standst im falschen Verzeichnis. In /home/pi oder ~ nämlich.

              Installier einfach per

              iobroker install iobroker.jeelink
              

              das ist unabhängig vom Verzeichnis in dem der Aufruf erfolgt.

              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

              J 1 Antwort Letzte Antwort
              1
              • Thomas BraunT Thomas Braun

                @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

                npm install --unsafe-perm iobroker.jeelink

                Jede Wette du standst im falschen Verzeichnis. In /home/pi oder ~ nämlich.

                Installier einfach per

                iobroker install iobroker.jeelink
                

                das ist unabhängig vom Verzeichnis in dem der Aufruf erfolgt.

                J Offline
                J Offline
                Joshude
                schrieb am zuletzt editiert von
                #16

                @thomas-braun Das war jetzt nur einer von mehreren Versuchen. Ich habs auch schon mit dem von dir genannten Befehl und ebenfalls auch schon direkt über die UI unter den Adaptern gemacht. Führt alles zum gleichen Ergebnis, leider. Die Version mit deinem Befehl (= via UI) dauert nur um einiges länger, bis da nen Fehler kommt :)

                Thomas BraunT 1 Antwort Letzte Antwort
                0
                • J Joshude

                  @thomas-braun Das war jetzt nur einer von mehreren Versuchen. Ich habs auch schon mit dem von dir genannten Befehl und ebenfalls auch schon direkt über die UI unter den Adaptern gemacht. Führt alles zum gleichen Ergebnis, leider. Die Version mit deinem Befehl (= via UI) dauert nur um einiges länger, bis da nen Fehler kommt :)

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

                  @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

                  bis da nen Fehler kommt

                  Und welchen Fehler kommt da?

                  [Edit:] Hab's jetzt mal auf meinem System nachgestellt, da baut der serialport auch nicht. Allerdings mit node16 und npm7, das muss dann nicht heißen, npm7 ist bekannt dafür zu zicken in Verbindung mit iobroker

                  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

                  J 1 Antwort Letzte Antwort
                  0
                  • Thomas BraunT Thomas Braun

                    @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

                    bis da nen Fehler kommt

                    Und welchen Fehler kommt da?

                    [Edit:] Hab's jetzt mal auf meinem System nachgestellt, da baut der serialport auch nicht. Allerdings mit node16 und npm7, das muss dann nicht heißen, npm7 ist bekannt dafür zu zicken in Verbindung mit iobroker

                    J Offline
                    J Offline
                    Joshude
                    schrieb am zuletzt editiert von
                    #18

                    @thomas-braun

                    $ ./iobroker add jeelink  --host raspberrypi
                    NPM version: 6.14.14
                    npm install iobroker.jeelink@0.1.0 --loglevel error --prefix "/opt/iobroker" (System call)
                    ../authenticate_pam.cc: In function ‘void after_doing_auth(uv_work_t*, int)’:
                    ../authenticate_pam.cc:107:87: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]   Nan::MakeCallback(Nan::GetCurrentContext()->Global(), Nan::New(m->callback), 1, args);                                                                                       ^In file included from ../authenticate_pam.cc:23:../../nan/nan.h:1028:46: note: declared here   NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(                                              ^~~~~~~~~~~~
                    ../authenticate_pam.cc:107:87: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]
                       Nan::MakeCallback(Nan::GetCurrentContext()->Global(), Nan::New(m->callback), 1, args);                                                                                       ^In file included from ../authenticate_pam.cc:23:../../nan/nan.h:1028:46: note: declared here   NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(                                              ^~~~~~~~~~~~
                    ../authenticate_pam.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE Authenticate(Nan::NAN_METHOD_ARGS_TYPE)’:../authenticate_pam.cc:147:83: error: no matching function for call to ‘v8::Array::Get(v8::Local<v8::String>)’   Local<Value> res = options->Get(Nan::New<String>("serviceName").ToLocalChecked());                                                                                   ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note:   candidate expects 2 arguments, 1 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note:   candidate expects 2 arguments, 1 provided../authenticate_pam.cc:150:69: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’    serviceName->WriteUtf8(m->serviceName, sizeof(m->serviceName) - 1);                                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’
                    ../authenticate_pam.cc:152:69: error: no matching function for call to ‘v8::Array::Get(v8::Local<v8::String>)’   res = options->Get(Nan::New<String>("remoteHost").ToLocalChecked());                                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note:   candidate expects 2 arguments, 1 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note:   candidate expects 2 arguments, 1 provided../authenticate_pam.cc:155:66: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’    remoteHost->WriteUtf8(m->remoteHost, sizeof(m->remoteHost) - 1);                                                                  ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’../authenticate_pam.cc:160:58: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’  username->WriteUtf8(m->username, sizeof(m->username) - 1);                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’../authenticate_pam.cc:161:58: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’  password->WriteUtf8(m->password, sizeof(m->password) - 1);                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’
                    ../authenticate_pam.cc: At global scope:
                    ../authenticate_pam.cc:170:11: error: variable or field ‘init’ declared void void init(Handle<Object> exports) {           ^~~~~~../authenticate_pam.cc:170:11: error: ‘Handle’ was not declared in this scope
                    ../authenticate_pam.cc:170:11: note: suggested alternative: ‘rand_r’
                     void init(Handle<Object> exports) {           ^~~~~~           rand_r../authenticate_pam.cc:170:24: error: expected primary-expression before ‘>’ token void init(Handle<Object> exports) {                        ^../authenticate_pam.cc:170:26: error: ‘exports’ was not declared in this scope void init(Handle<Object> exports) {                          ^~~~~~~
                    In file included from ../../nan/nan.h:58,
                                     from ../authenticate_pam.cc:23:../authenticate_pam.cc:175:31: error: ‘init’ was not declared in this scope NODE_MODULE(authenticate_pam, init);                               ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../authenticate_pam.cc:175:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(authenticate_pam, init); ^~~~~~~~~~~
                    ../authenticate_pam.cc:175:31: note: suggested alternative: ‘int’
                     NODE_MODULE(authenticate_pam, init);                               ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../authenticate_pam.cc:175:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(authenticate_pam, init); ^~~~~~~~~~~
                    make: *** [authenticate_pam.target.mk:109: Release/obj.target/authenticate_pam/authenticate_pam.o] Error 1
                    gyp ERR! build error 
                    gyp ERR! stack Error: `make` failed with exit code: 2
                    gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)gyp ERR! stack     at ChildProcess.emit (events.js:400:28)gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)gyp ERR! System Linux 5.10.52-v7+
                    gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"gyp ERR! cwd /opt/iobroker/node_modules/authenticate-pamgyp ERR! node -v v14.17.4gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok 
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
                    ../src/serialport.cpp:41:48: error: no matching function for call to ‘v8::Value::ToString()’   v8::String::Utf8Value path(info[0]->ToString());                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2810:44: note: candidate: ‘v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2810:44: note:   candidate expects 1 argument, 0 provided../src/serialport.cpp:48:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided
                    ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                       uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);                                                                     ^~~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t*)’:../src/serialport.cpp:95:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:113:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided
                    ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);                                                                       ^~~~~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t*)’:../src/serialport.cpp:150:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);                                                                      ^~~~~~~~~~~~~~../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t*)’:../src/serialport.cpp:188:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);                                                                      ^~~~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t*)’:../src/serialport.cpp:231:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:250:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);                                                                    ^~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t*)’:../src/serialport.cpp:285:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
                    ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);                                                                    ^~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
                    ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                    ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:336:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);                                                                            ^~~~~~~~~~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
                    ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’     results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));                                                                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:383:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);                                                                      ^~~~~~~~~~~~~~
                    ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t*)’:../src/serialport.cpp:424:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                    ../src/serialport.cpp: At global scope:../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses] SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {                            ^../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses] SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {                              ^
                    ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void   void init(v8::Handle<v8::Object> target) {                 ^~~~~~../src/serialport.cpp:460:17: error: ‘Handle’ is not a member of ‘v8’../src/serialport.cpp:460:17: note: suggested alternative: ‘JobHandle’   void init(v8::Handle<v8::Object> target) {                 ^~~~~~                 JobHandle../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ token   void init(v8::Handle<v8::Object> target) {                                  ^../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope   void init(v8::Handle<v8::Object> target) {                                    ^~~~~~
                    ../src/serialport.cpp:460:36: note: suggested alternative: ‘tzset’
                       void init(v8::Handle<v8::Object> target) {                                    ^~~~~~                                    tzsetIn file included from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope NODE_MODULE(serialport, init);                         ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~
                    ../src/serialport.cpp:485:25: note: suggested alternative: ‘int’
                     NODE_MODULE(serialport, init);                         ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~
                    make: *** [serialport.target.mk:112: 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 (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)gyp ERR! stack     at ChildProcess.emit (events.js:400:28)gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)gyp ERR! System Linux 5.10.52-v7+
                    gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"gyp ERR! cwd /opt/iobroker/node_modules/iobroker.jeelink/node_modules/serialportgyp ERR! node -v v14.17.4gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok 
                    npm ERR! code ELIFECYCLE
                    npm ERR! errno 1
                    npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
                    npm ERR! Exit status 1npm ERR! npm ERR! Failed at the serialport@6.2.2 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                    
                    npm ERR! A complete log of this run can be found in:
                    npm ERR!     /home/iobroker/.npm/_logs/2021-08-11T13_54_13_982Z-debug.log
                    ERROR: host.raspberrypi Cannot install iobroker.jeelink@0.1.0: 1
                    ERROR: process exited with code 25
                    
                    Thomas BraunT 1 Antwort Letzte Antwort
                    0
                    • J Joshude

                      @thomas-braun

                      $ ./iobroker add jeelink  --host raspberrypi
                      NPM version: 6.14.14
                      npm install iobroker.jeelink@0.1.0 --loglevel error --prefix "/opt/iobroker" (System call)
                      ../authenticate_pam.cc: In function ‘void after_doing_auth(uv_work_t*, int)’:
                      ../authenticate_pam.cc:107:87: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]   Nan::MakeCallback(Nan::GetCurrentContext()->Global(), Nan::New(m->callback), 1, args);                                                                                       ^In file included from ../authenticate_pam.cc:23:../../nan/nan.h:1028:46: note: declared here   NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(                                              ^~~~~~~~~~~~
                      ../authenticate_pam.cc:107:87: warning: ‘v8::Local<v8::Value> Nan::MakeCallback(v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*)’ is deprecated [-Wdeprecated-declarations]
                         Nan::MakeCallback(Nan::GetCurrentContext()->Global(), Nan::New(m->callback), 1, args);                                                                                       ^In file included from ../authenticate_pam.cc:23:../../nan/nan.h:1028:46: note: declared here   NAN_DEPRECATED inline v8::Local<v8::Value> MakeCallback(                                              ^~~~~~~~~~~~
                      ../authenticate_pam.cc: In function ‘Nan::NAN_METHOD_RETURN_TYPE Authenticate(Nan::NAN_METHOD_ARGS_TYPE)’:../authenticate_pam.cc:147:83: error: no matching function for call to ‘v8::Array::Get(v8::Local<v8::String>)’   Local<Value> res = options->Get(Nan::New<String>("serviceName").ToLocalChecked());                                                                                   ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note:   candidate expects 2 arguments, 1 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note:   candidate expects 2 arguments, 1 provided../authenticate_pam.cc:150:69: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’    serviceName->WriteUtf8(m->serviceName, sizeof(m->serviceName) - 1);                                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’
                      ../authenticate_pam.cc:152:69: error: no matching function for call to ‘v8::Array::Get(v8::Local<v8::String>)’   res = options->Get(Nan::New<String>("remoteHost").ToLocalChecked());                                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3717:43: note:   candidate expects 2 arguments, 1 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note: candidate: ‘v8::MaybeLocal<v8::Value> v8::Object::Get(v8::Local<v8::Context>, uint32_t)’   V8_WARN_UNUSED_RESULT MaybeLocal<Value> Get(Local<Context> context,                                           ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3720:43: note:   candidate expects 2 arguments, 1 provided../authenticate_pam.cc:155:66: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’    remoteHost->WriteUtf8(m->remoteHost, sizeof(m->remoteHost) - 1);                                                                  ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’../authenticate_pam.cc:160:58: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’  username->WriteUtf8(m->username, sizeof(m->username) - 1);                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’../authenticate_pam.cc:161:58: error: no matching function for call to ‘v8::String::WriteUtf8(char [128], unsigned int)’  password->WriteUtf8(m->password, sizeof(m->password) - 1);                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../nan/nan.h:58,                 from ../authenticate_pam.cc:23:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note: candidate: ‘int v8::String::WriteUtf8(v8::Isolate*, char*, int, int*, int) const’   int WriteUtf8(Isolate* isolate, char* buffer, int length = -1,       ^~~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3037:7: note:   no known conversion for argument 1 from ‘char [128]’ to ‘v8::Isolate*’
                      ../authenticate_pam.cc: At global scope:
                      ../authenticate_pam.cc:170:11: error: variable or field ‘init’ declared void void init(Handle<Object> exports) {           ^~~~~~../authenticate_pam.cc:170:11: error: ‘Handle’ was not declared in this scope
                      ../authenticate_pam.cc:170:11: note: suggested alternative: ‘rand_r’
                       void init(Handle<Object> exports) {           ^~~~~~           rand_r../authenticate_pam.cc:170:24: error: expected primary-expression before ‘>’ token void init(Handle<Object> exports) {                        ^../authenticate_pam.cc:170:26: error: ‘exports’ was not declared in this scope void init(Handle<Object> exports) {                          ^~~~~~~
                      In file included from ../../nan/nan.h:58,
                                       from ../authenticate_pam.cc:23:../authenticate_pam.cc:175:31: error: ‘init’ was not declared in this scope NODE_MODULE(authenticate_pam, init);                               ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../authenticate_pam.cc:175:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(authenticate_pam, init); ^~~~~~~~~~~
                      ../authenticate_pam.cc:175:31: note: suggested alternative: ‘int’
                       NODE_MODULE(authenticate_pam, init);                               ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../authenticate_pam.cc:175:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(authenticate_pam, init); ^~~~~~~~~~~
                      make: *** [authenticate_pam.target.mk:109: Release/obj.target/authenticate_pam/authenticate_pam.o] Error 1
                      gyp ERR! build error 
                      gyp ERR! stack Error: `make` failed with exit code: 2
                      gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)gyp ERR! stack     at ChildProcess.emit (events.js:400:28)gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)gyp ERR! System Linux 5.10.52-v7+
                      gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"gyp ERR! cwd /opt/iobroker/node_modules/authenticate-pamgyp ERR! node -v v14.17.4gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok 
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:41:48: error: no matching function for call to ‘v8::Value::ToString()’   v8::String::Utf8Value path(info[0]->ToString());                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2810:44: note: candidate: ‘v8::MaybeLocal<v8::String> v8::Value::ToString(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<String> ToString(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2810:44: note:   candidate expects 1 argument, 0 provided../src/serialport.cpp:48:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided
                      ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                         uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);                                                                     ^~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterOpen(uv_work_t*)’:../src/serialport.cpp:95:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:113:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided
                      ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);                                                                       ^~~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterUpdate(uv_work_t*)’:../src/serialport.cpp:150:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);                                                                      ^~~~~~~~~~~~~~../src/serialport.cpp: In function ‘void EIO_AfterClose(uv_work_t*)’:../src/serialport.cpp:188:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);                                                                      ^~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterFlush(uv_work_t*)’:../src/serialport.cpp:231:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:250:53: error: no matching function for call to ‘v8::Value::ToObject()’   v8::Local<v8::Object> options = info[1]->ToObject();                                                     ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note: candidate: ‘v8::MaybeLocal<v8::Object> v8::Value::ToObject(v8::Local<v8::Context>) const’   V8_WARN_UNUSED_RESULT MaybeLocal<Object> ToObject(                                            ^~~~~~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:2822:44: note:   candidate expects 1 argument, 0 provided../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);                                                                    ^~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterSet(uv_work_t*)’:../src/serialport.cpp:285:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);                                                                    ^~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
                      ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                      ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’     results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));                                                                                                ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:336:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);                                                                            ^~~~~~~~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
                      ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’     results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));                                                                                                          ^In file included from /home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:67,                 from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’   V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,                                     ^~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided../src/serialport.cpp:383:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(2, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]   uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);                                                                      ^~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t*)’:../src/serialport.cpp:424:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call(int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations]   data->callback.Call(1, argv);                              ^In file included from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../../../../nan/nan.h:1744:3: note: declared here   Call(int argc, v8::Local<v8::Value> argv[]) const {   ^~~~
                      ../src/serialport.cpp: At global scope:../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses] SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {                            ^../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses] SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {                              ^
                      ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void   void init(v8::Handle<v8::Object> target) {                 ^~~~~~../src/serialport.cpp:460:17: error: ‘Handle’ is not a member of ‘v8’../src/serialport.cpp:460:17: note: suggested alternative: ‘JobHandle’   void init(v8::Handle<v8::Object> target) {                 ^~~~~~                 JobHandle../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ token   void init(v8::Handle<v8::Object> target) {                                  ^../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope   void init(v8::Handle<v8::Object> target) {                                    ^~~~~~
                      ../src/serialport.cpp:460:36: note: suggested alternative: ‘tzset’
                         void init(v8::Handle<v8::Object> target) {                                    ^~~~~~                                    tzsetIn file included from ../../../../nan/nan.h:58,                 from ../src/./serialport.h:6,                 from ../src/serialport.cpp:1:../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope NODE_MODULE(serialport, init);                         ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~
                      ../src/serialport.cpp:485:25: note: suggested alternative: ‘int’
                       NODE_MODULE(serialport, init);                         ^~~~/home/iobroker/.cache/node-gyp/14.17.4/include/node/node.h:758:36: note: in definition of macro ‘NODE_MODULE_X’       (node::addon_register_func) (regfunc),                          \                                    ^~~~~~~../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~
                      make: *** [serialport.target.mk:112: 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 (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)gyp ERR! stack     at ChildProcess.emit (events.js:400:28)gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)gyp ERR! System Linux 5.10.52-v7+
                      gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"gyp ERR! cwd /opt/iobroker/node_modules/iobroker.jeelink/node_modules/serialportgyp ERR! node -v v14.17.4gyp ERR! node-gyp -v v5.1.0gyp ERR! not ok 
                      npm ERR! code ELIFECYCLE
                      npm ERR! errno 1
                      npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
                      npm ERR! Exit status 1npm ERR! npm ERR! Failed at the serialport@6.2.2 install script.npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                      
                      npm ERR! A complete log of this run can be found in:
                      npm ERR!     /home/iobroker/.npm/_logs/2021-08-11T13_54_13_982Z-debug.log
                      ERROR: host.raspberrypi Cannot install iobroker.jeelink@0.1.0: 1
                      ERROR: process exited with code 25
                      
                      Thomas BraunT Online
                      Thomas BraunT Online
                      Thomas Braun
                      Most Active
                      schrieb am zuletzt editiert von Thomas Braun
                      #19

                      @joshude sagte in Jeelink Adapter lässt sich nicht installieren:

                      authenticate_pam

                      Das ist ziemlich alter Kram, da bin ich mir fast sicher dass der nicht mehr mit aktuellen nodeJS-Versionen zusammen läuft.
                      Mach ein Issue beim Adapter auf, da muss vermutlich mal wer den Code / die Dependencies aktualisieren.

                      Du hast aber nicht zufällig den Adapter 'terminal' bei dir im System? Der sorgt nämlich für ganz ähnliche Dinge. Wirf den mal raus, falls der drin ist.

                      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

                      Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                      Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                      Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                      Registrieren Anmelden
                      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

                      538

                      Online

                      32.9k

                      Benutzer

                      83.0k

                      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