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

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. [How-to] Node.js ioBroker richtig updaten-2021/22 Edition

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.6k

[How-to] Node.js ioBroker richtig updaten-2021/22 Edition

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
812 Beiträge 97 Kommentatoren 364.8k Aufrufe 83 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • E Offline
    E Offline
    ecki945
    schrieb am zuletzt editiert von
    #319

    Node habe ich vor der Installation von iobroker installiert.

    So hab ich das aus der Doku verstanden.

    KLICK

    J 1 Antwort Letzte Antwort
    0
    • E ecki945

      Node habe ich vor der Installation von iobroker installiert.

      So hab ich das aus der Doku verstanden.

      KLICK

      J Offline
      J Offline
      Jan1
      schrieb am zuletzt editiert von
      #320

      @ecki945
      Der Doku kann man so folgen, wobei die mal erweiter werden müsste, mit dem Hinweis, das IOBroker Node mit installiert.
      Mit dem Proxmox Zeug kenne ich mich nicht aus, wobei ich davon ausgehe, das die Pfade für Node identisch sein sollten und die sind bei Dir bei der Abfrage schon angemeckert worden ;)

      Ich würde das jetzt einfach mal wieder alles löschen und schlicht die IOBroker Installation durchführen, danach mal die Node kontrollieren.

      HomoranH 1 Antwort Letzte Antwort
      0
      • E ecki945

        Guten Morgen. Bin gerade dabei meinen neuen NUC hochzuziehen. Proxmox 7.1-10 ist installiert. Ein neuer unpreviligiert Container mit akutellem debian ist erstellt. Doch nach der Installation meckert er herum.

        Ist iobroker nun richtig installiert trotz der Fehlermeldung?

        root@Iobroker:~# cat /etc/debian_version
        11.2
        root@Iobroker:~# node -v
        v14.19.0
        root@Iobroker:~# nodejs -v
        -bash: nodejs: command not found
        root@Iobroker:~# npm -v
        6.14.16
        root@Iobroker:~# curl -sLf https://iobroker.net/install.sh | bash -
        library: loaded
        Library version=2022-02-10
        
        ==========================================================================
        
            Welcome to the ioBroker installer!
            Installer version: 2022-02-10
        
        ==========================================================================
        
        
        ==========================================================================
            Installing prerequisites (1/4)
        ==========================================================================
        
        Hit:1 http://security.debian.org bullseye-security InRelease
        Hit:2 http://ftp.debian.org/debian bullseye InRelease                   
        Hit:3 http://ftp.debian.org/debian bullseye-updates InRelease           
        Hit:4 https://deb.nodesource.com/node_14.x bullseye InRelease           
        Reading package lists... Done                     
        Changing npm registry to https://registry.npmjs.org
        Installed acl
        Installed build-essential
        Installed gcc-c++
        Installed libavahi-compat-libdnssd-dev
        Installed libudev-dev
        Installed libpam0g-dev
        Installed git
        Installed unzip
        Installed libcairo2-dev
        Installed libpango1.0-dev
        Installed libjpeg-dev
        Installed libgif-dev
        Installed librsvg2-dev
        Installed net-tools
        Installed python-dev
        Installed cmake
        
        ==========================================================================
            Creating ioBroker user and directory (2/4)
        ==========================================================================
        
        User iobroker created
        Created /etc/sudoers.d/iobroker
        Directory /opt/iobroker created
        
        ==========================================================================
            Installing ioBroker (3/4)
        ==========================================================================
        
        In file included from ../../nan/nan.h:58,
                         from ../src/main.cpp:3:
        /root/.cache/node-gyp/14.19.0/include/node/node.h:793:7: warning: cast between incompatible function types from 'void (*)(v8::Local<v8::Object>)' to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type]
          793 |       (node::addon_register_func) (regfunc),                          \
              |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        /root/.cache/node-gyp/14.19.0/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X'
          827 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
              |   ^~~~~~~~~~~~~
        ../src/main.cpp:42:1: note: in expansion of macro 'NODE_MODULE'
           42 | NODE_MODULE(diskusage, Init)
              | ^~~~~~~~~~~
        In file included from ../../nan/nan.h:58,
                         from ../src/unix_dgram.cc:5:
        /root/.cache/node-gyp/14.19.0/include/node/node.h:793:7: warning: cast between incompatible function types from 'void (*)(v8::Local<v8::Object>)' to 'node::addon_register_func' {aka 'void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)'} [-Wcast-function-type]
          793 |       (node::addon_register_func) (regfunc),                          \
              |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        /root/.cache/node-gyp/14.19.0/include/node/node.h:827:3: note: in expansion of macro 'NODE_MODULE_X'
          827 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
              |   ^~~~~~~~~~~~~
        ../src/unix_dgram.cc:404:1: note: in expansion of macro 'NODE_MODULE'
          404 | NODE_MODULE(unix_dgram, Initialize)
              | ^~~~~~~~~~~
        
        ATTENTION: Error reporting via Sentry will be activated on next start of ioBroker
        
        ioBroker wants to make sure to deliver the most stable smart home system.
        To allow this we decided to implement an automatic error and crash reporting solution into the js-controller and also into adapters. 
        
        THIS REPORTING WILL BE ENABLED WITH THE NEXT START OF YOUR IOBROKER!
        
        For any error that leads to the crash of the js-controller or one of the relevant adapters the error details are send to a server. For the js-controller and core adapters this server is located and operated in germany. For community adapters please check the Github Readme of the affected adapter for details which Sentry server is used.
        
        If you want to disable the error reporting you can use the command
        'iobroker plugin disable sentry'
        This command will also make sure that no adapter that runs on this host will send crash reporting data to sentry.
        
        
        
        ==========================================================================
            Finalizing installation (4/4)
        ==========================================================================
        
        Enabling autostart...
        Created symlink /etc/systemd/system/multi-user.target.wants/iobroker.service -> /lib/systemd/system/iobroker.service.
        Autostart enabled!
        Fixing directory permissions...
        
        ==========================================================================
        
            ioBroker was installed successfully
            Open http://192.168.178.11:8081 in a browser and start configuring!
        
        ==========================================================================
        
        
        You need to re-login before doing anything else on the console!
        
        apollon77A Offline
        apollon77A Offline
        apollon77
        schrieb am zuletzt editiert von
        #321

        @ecki945 da meckert nix tun. Ist doch alles ok.

        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
        1 Antwort Letzte Antwort
        0
        • R Offline
          R Offline
          Rockfox
          schrieb am zuletzt editiert von
          #322

          Hallo bekomme beim Laden der Node.js 14 folgendes (Fehler) angezeigt. Kann ich die Installation trotzdem anstoßen.

          /opt/iobroker $ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
          
          ## Installing the NodeSource Node.js 14.x repo...
          
          ## Populating apt-get cache...
          
          + apt-get update
          Holen:1 http://raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB]
          Holen:2 http://archive.raspberrypi.org/debian buster InRelease [32,6 kB]
          Ign:3 https://phoscon.de/apt/deconz buster InRelease                                                
          Holen:4 https://deb.nodesource.com/node_12.x buster InRelease [4.584 B]                       
          Fehl:5 https://phoscon.de/apt/deconz buster Release                       
            Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate.  Could not handshake: Error in the certificate verification.
          Holen:6 https://deb.nodesource.com/node_12.x buster/main armhf Packages [783 B]
          Paketlisten werden gelesen... Fertig
          E: Das Depot »https://phoscon.de/apt/deconz buster Release« enthält keine Release-Datei mehr.
          N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert.
          N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8).
          E: Für das Depot »http://raspbian.raspberrypi.org/raspbian buster InRelease« wurde der »Suite«-Wert von »stable« in »oldstable« geändert.
          N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
          E: Für das Depot »http://archive.raspberrypi.org/debian buster InRelease« wurde der »Suite«-Wert von »testing« in »oldstable« geändert.
          N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
          Error executing command, exiting
          
          
          Thomas BraunT 1 Antwort Letzte Antwort
          0
          • R Rockfox

            Hallo bekomme beim Laden der Node.js 14 folgendes (Fehler) angezeigt. Kann ich die Installation trotzdem anstoßen.

            /opt/iobroker $ curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
            
            ## Installing the NodeSource Node.js 14.x repo...
            
            ## Populating apt-get cache...
            
            + apt-get update
            Holen:1 http://raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB]
            Holen:2 http://archive.raspberrypi.org/debian buster InRelease [32,6 kB]
            Ign:3 https://phoscon.de/apt/deconz buster InRelease                                                
            Holen:4 https://deb.nodesource.com/node_12.x buster InRelease [4.584 B]                       
            Fehl:5 https://phoscon.de/apt/deconz buster Release                       
              Certificate verification failed: The certificate is NOT trusted. The certificate chain uses expired certificate.  Could not handshake: Error in the certificate verification.
            Holen:6 https://deb.nodesource.com/node_12.x buster/main armhf Packages [783 B]
            Paketlisten werden gelesen... Fertig
            E: Das Depot »https://phoscon.de/apt/deconz buster Release« enthält keine Release-Datei mehr.
            N: Eine Aktualisierung von solch einem Depot kann nicht auf eine sichere Art durchgeführt werden, daher ist es standardmäßig deaktiviert.
            N: Weitere Details zur Erzeugung von Paketdepots sowie zu deren Benutzerkonfiguration finden Sie in der Handbuchseite apt-secure(8).
            E: Für das Depot »http://raspbian.raspberrypi.org/raspbian buster InRelease« wurde der »Suite«-Wert von »stable« in »oldstable« geändert.
            N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
            E: Für das Depot »http://archive.raspberrypi.org/debian buster InRelease« wurde der »Suite«-Wert von »testing« in »oldstable« geändert.
            N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
            Error executing command, exiting
            
            
            Thomas BraunT Online
            Thomas BraunT Online
            Thomas Braun
            Most Active
            schrieb am zuletzt editiert von
            #323

            @rockfox

            sudo apt update
            sudo apt full-upgrade
            sudo reboot
            

            Rückfragen bejahen.

            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

            R 1 Antwort Letzte Antwort
            1
            • Thomas BraunT Thomas Braun

              @rockfox

              sudo apt update
              sudo apt full-upgrade
              sudo reboot
              

              Rückfragen bejahen.

              R Offline
              R Offline
              Rockfox
              schrieb am zuletzt editiert von
              #324

              @thomas-braun
              Danke

              Thomas BraunT 1 Antwort Letzte Antwort
              0
              • J Jan1

                @ecki945
                Der Doku kann man so folgen, wobei die mal erweiter werden müsste, mit dem Hinweis, das IOBroker Node mit installiert.
                Mit dem Proxmox Zeug kenne ich mich nicht aus, wobei ich davon ausgehe, das die Pfade für Node identisch sein sollten und die sind bei Dir bei der Abfrage schon angemeckert worden ;)

                Ich würde das jetzt einfach mal wieder alles löschen und schlicht die IOBroker Installation durchführen, danach mal die Node kontrollieren.

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

                @jan1 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                Der Doku kann man so folgen, wobei die mal erweiter werden müsste, mit dem Hinweis, das IOBroker Node mit installiert.

                das steht doch drin -in großem roten Kasten vorweg:

                mit dem aktuellen Installer von ioBroker (siehe unten) wird auf einem System ohne node.js automatisch die aktuell empfohlene Version von node.js mit installiert! Eine vorherige separate Installation von node.js ist somit nicht mehr nötig.

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

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

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

                AlCalzoneA 1 Antwort Letzte Antwort
                0
                • HomoranH Homoran

                  @jan1 sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                  Der Doku kann man so folgen, wobei die mal erweiter werden müsste, mit dem Hinweis, das IOBroker Node mit installiert.

                  das steht doch drin -in großem roten Kasten vorweg:

                  mit dem aktuellen Installer von ioBroker (siehe unten) wird auf einem System ohne node.js automatisch die aktuell empfohlene Version von node.js mit installiert! Eine vorherige separate Installation von node.js ist somit nicht mehr nötig.

                  AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  schrieb am zuletzt editiert von
                  #326

                  @homoran sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                  das steht doch drin

                  <marquee><blink> ... </blink></marquee>
                  

                  Könnte nötig sein 🤣

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  crunchipC 1 Antwort Letzte Antwort
                  1
                  • R Rockfox

                    @thomas-braun
                    Danke

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

                    @rockfox

                    Läuft das jetzt sauber durch? Inkl. phoscon-Repo?

                    sudo apt update
                    

                    wirft dir jetzt was genau um die Ohren?

                    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
                    • portyP Offline
                      portyP Offline
                      porty
                      schrieb am zuletzt editiert von
                      #328

                      Guten Morgen, ich verzweifel gerade an dem Problem welcher im Eingangspost beschrieben wurde (Serialport).

                      Gestern habe ich ein Update vom Sytem / Nodejs gemacht auf die aktuelle 14.x
                      Der Zigbee adapter hatte die gleiche Probleme, läuft jedoch inzwischen,

                      Sobald ich den Jeelink Adapter jedoch starte bekomme ich Fehlermeldungen im Log.

                      host.NUC
                      2022-03-20 11:24:39.556	error	instance system.adapter.jeelink.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                      host.NUC
                      2022-03-20 11:24:39.556	error	Caught by controller[0]: }
                      host.NUC
                      2022-03-20 11:24:39.556	error	Caught by controller[0]: ]
                      host.NUC
                      2022-03-20 11:24:39.556	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node'
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/bindings.node',
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: tries: [
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) {
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22)
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: at require (internal/modules/cjs/helpers.js:101:18)
                      host.NUC
                      2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:1:36)
                      host.NUC
                      2022-03-20 11:24:39.552	error	Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9)
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.549	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node
                      host.NUC
                      2022-03-20 11:24:39.549	error	Caught by controller[0]: Error: Could not locate the bindings file. Tried:
                      host.NUC
                      2022-03-20 11:24:39.549	error	Caught by controller[0]: ^
                      host.NUC
                      2022-03-20 11:24:39.549	error	Caught by controller[0]: throw err;
                      host.NUC
                      2022-03-20 11:24:39.548	error	Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:135
                      

                      ein "npm install --production" funktioniert jedoch auch nicht

                      porty@NUC:~$ cd /opt/iobroker/node_modules/@serialport/bindings
                      porty@NUC:/opt/iobroker/node_modules/@serialport/bindings$ npm install --production
                      [sudo] Passwort für porty:
                      
                      > @serialport/bindings@2.0.8 install /opt/iobroker/node_modules/@serialport/bindings
                      > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
                      
                      prebuild-install WARN install No prebuilt binaries found (target=14.19.1 runtime=node arch=x64 libc= platform=linux)
                      make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird betreten
                       CXX(target) Release/obj.target/bindings/src/serialport.o
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
                                                                                          ^~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
                                                                                            ^~~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
                                                                                           ^~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
                                                                                           ^~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
                                                                                         ^~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
                                                                                         ^~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
                      ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                          results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                                     ^
                      In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                      from ../node_modules/nan/nan.h:58,
                                      from ../src/./serialport.h:6,
                                      from ../src/serialport.cpp:1:
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                      ../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                          results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                                     ^
                      In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                      from ../node_modules/nan/nan.h:58,
                                      from ../src/./serialport.h:6,
                                      from ../src/serialport.cpp:1:
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                      ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                          results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                                     ^
                      In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                      from ../node_modules/nan/nan.h:58,
                                      from ../src/./serialport.h:6,
                                      from ../src/serialport.cpp:1:
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
                                                                                                 ^~~~~~~~~~~~~~~~~~~~
                      ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
                      ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
                          results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                               ^
                      In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                      from ../node_modules/nan/nan.h:58,
                                      from ../src/./serialport.h:6,
                                      from ../src/serialport.cpp:1:
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                        V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                          ^~~
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
                      ../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                        uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
                                                                                           ^~~~~~~~~~~~~~
                      ../src/serialport.cpp: At global scope:
                      ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
                      SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
                                                 ^
                      ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
                      SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
                                                   ^
                      In file included from ../node_modules/nan/nan.h:58,
                                      from ../src/./serialport.h:6,
                                      from ../src/serialport.cpp:1:
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:793:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
                            (node::addon_register_func) (regfunc),                          \
                                                                ^
                      /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:827: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:114: Release/obj.target/bindings/src/serialport.o] Fehler 1
                      make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird verlassen
                      gyp ERR! build error
                      gyp ERR! stack Error: `make` failed with exit code: 2
                      gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
                      gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
                      gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
                      gyp ERR! System Linux 4.19.0-19-amd64
                      gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
                      gyp ERR! cwd /opt/iobroker/node_modules/@serialport/bindings
                      gyp ERR! node -v v14.19.1
                      gyp ERR! node-gyp -v v5.1.0
                      gyp ERR! not ok
                      npm ERR! code ELIFECYCLE
                      npm ERR! errno 1
                      npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                      npm ERR! Exit status 1
                      npm ERR!
                      npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
                      npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                      
                      npm ERR! A complete log of this run can be found in:
                      npm ERR!     /home/iobroker/.npm/_logs/2022-03-20T10_27_29_791Z-debug.log
                      
                      

                      und das passende Logfile:

                      0 info it worked if it ends with ok
                      1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install', '--production' ]
                      2 info using npm@6.14.16
                      3 info using node@v14.19.1
                      4 verbose npm-session 376e18a5e07bd759
                      5 silly install runPreinstallTopLevelLifecycles
                      6 silly preinstall @serialport/bindings@2.0.8
                      7 info lifecycle @serialport/bindings@2.0.8~preinstall: @serialport/bindings@2.0.8
                      8 silly install loadCurrentTree
                      9 silly install readLocalPackageData
                      10 timing stage:loadCurrentTree Completed in 498ms
                      11 silly install loadIdealTree
                      12 silly install cloneCurrentTreeToIdealTree
                      13 timing stage:loadIdealTree:cloneCurrentTree Completed in 6ms
                      14 silly install loadShrinkwrap
                      15 timing stage:loadIdealTree:loadShrinkwrap Completed in 154ms
                      16 silly install loadAllDepsIntoIdealTree
                      17 http fetch GET 304 https://registry.npmjs.org/@serialport%2fbinding-mock 445ms (from cache)
                      18 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 480ms
                      19 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 4ms
                      20 silly resolveWithNewModule @serialport/binding-mock@2.0.5 checking installable status
                      21 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 882ms
                      22 timing stage:loadIdealTree Completed in 1151ms
                      23 silly currentTree @serialport/bindings@2.0.8
                      23 silly currentTree ├── @serialport/binding-abstract@2.0.5
                      23 silly currentTree ├── @serialport/parser-delimiter@2.0.2
                      23 silly currentTree ├── @serialport/parser-readline@2.0.2
                      23 silly currentTree ├── ansi-regex@2.1.1
                      23 silly currentTree ├── aproba@1.2.0
                      23 silly currentTree ├─┬ are-we-there-yet@1.1.7
                      23 silly currentTree │ └── readable-stream@2.3.7
                      23 silly currentTree ├── bindings@1.5.0
                      23 silly currentTree ├── bl@3.0.0
                      23 silly currentTree ├── chownr@1.1.4
                      23 silly currentTree ├── code-point-at@1.1.0
                      23 silly currentTree ├── console-control-strings@1.1.0
                      23 silly currentTree ├── core-util-is@1.0.3
                      23 silly currentTree ├── debug@4.1.1
                      23 silly currentTree ├── decompress-response@4.2.1
                      23 silly currentTree ├── deep-extend@0.6.0
                      23 silly currentTree ├── delegates@1.0.0
                      23 silly currentTree ├── detect-libc@1.0.3
                      23 silly currentTree ├── end-of-stream@1.4.4
                      23 silly currentTree ├── expand-template@2.0.3
                      23 silly currentTree ├── file-uri-to-path@1.0.0
                      23 silly currentTree ├── fs-constants@1.0.0
                      23 silly currentTree ├── gauge@2.7.4
                      23 silly currentTree ├── github-from-package@0.0.0
                      23 silly currentTree ├── has-unicode@2.0.1
                      23 silly currentTree ├── inherits@2.0.4
                      23 silly currentTree ├── ini@1.3.8
                      23 silly currentTree ├── is-fullwidth-code-point@1.0.0
                      23 silly currentTree ├── isarray@1.0.0
                      23 silly currentTree ├── mimic-response@2.0.0
                      23 silly currentTree ├── minimist@1.2.5
                      23 silly currentTree ├── mkdirp@0.5.5
                      23 silly currentTree ├── ms@2.1.2
                      23 silly currentTree ├── nan@2.15.0
                      23 silly currentTree ├── napi-build-utils@1.0.2
                      23 silly currentTree ├── node-abi@2.30.1
                      23 silly currentTree ├── noop-logger@0.1.1
                      23 silly currentTree ├── npmlog@4.1.2
                      23 silly currentTree ├── number-is-nan@1.0.1
                      23 silly currentTree ├── object-assign@4.1.1
                      23 silly currentTree ├── once@1.4.0
                      23 silly currentTree ├── prebuild-install@5.3.3
                      23 silly currentTree ├── process-nextick-args@2.0.1
                      23 silly currentTree ├── pump@3.0.0
                      23 silly currentTree ├── rc@1.2.8
                      23 silly currentTree ├── readable-stream@3.4.0
                      23 silly currentTree ├── safe-buffer@5.1.2
                      23 silly currentTree ├── semver@5.7.1
                      23 silly currentTree ├── set-blocking@2.0.0
                      23 silly currentTree ├── signal-exit@3.0.7
                      23 silly currentTree ├── simple-concat@1.0.1
                      23 silly currentTree ├── simple-get@3.1.0
                      23 silly currentTree ├── string_decoder@1.1.1
                      23 silly currentTree ├── string-width@1.0.2
                      23 silly currentTree ├── strip-ansi@3.0.1
                      23 silly currentTree ├── strip-json-comments@2.0.1
                      23 silly currentTree ├── tar-fs@2.0.0
                      23 silly currentTree ├── tar-stream@2.1.0
                      23 silly currentTree ├── tunnel-agent@0.6.0
                      23 silly currentTree ├── util-deprecate@1.0.2
                      23 silly currentTree ├── which-pm-runs@1.1.0
                      23 silly currentTree ├── wide-align@1.1.5
                      23 silly currentTree └── wrappy@1.0.2
                      24 silly idealTree @serialport/bindings@2.0.8
                      24 silly idealTree ├── @serialport/binding-abstract@2.0.5
                      24 silly idealTree ├── @serialport/binding-mock@2.0.5
                      24 silly idealTree ├── @serialport/parser-delimiter@2.0.2
                      24 silly idealTree ├── @serialport/parser-readline@2.0.2
                      24 silly idealTree ├── ansi-regex@2.1.1
                      24 silly idealTree ├── aproba@1.2.0
                      24 silly idealTree ├─┬ are-we-there-yet@1.1.7
                      24 silly idealTree │ └── readable-stream@2.3.7
                      24 silly idealTree ├── bindings@1.5.0
                      24 silly idealTree ├── bl@3.0.0
                      24 silly idealTree ├── chownr@1.1.4
                      24 silly idealTree ├── code-point-at@1.1.0
                      24 silly idealTree ├── console-control-strings@1.1.0
                      24 silly idealTree ├── core-util-is@1.0.3
                      24 silly idealTree ├── debug@4.1.1
                      24 silly idealTree ├── decompress-response@4.2.1
                      24 silly idealTree ├── deep-extend@0.6.0
                      24 silly idealTree ├── delegates@1.0.0
                      24 silly idealTree ├── detect-libc@1.0.3
                      24 silly idealTree ├── end-of-stream@1.4.4
                      24 silly idealTree ├── expand-template@2.0.3
                      24 silly idealTree ├── file-uri-to-path@1.0.0
                      24 silly idealTree ├── fs-constants@1.0.0
                      24 silly idealTree ├── gauge@2.7.4
                      24 silly idealTree ├── github-from-package@0.0.0
                      24 silly idealTree ├── has-unicode@2.0.1
                      24 silly idealTree ├── inherits@2.0.4
                      24 silly idealTree ├── ini@1.3.8
                      24 silly idealTree ├── is-fullwidth-code-point@1.0.0
                      24 silly idealTree ├── isarray@1.0.0
                      24 silly idealTree ├── mimic-response@2.0.0
                      24 silly idealTree ├── minimist@1.2.5
                      24 silly idealTree ├── mkdirp@0.5.5
                      24 silly idealTree ├── ms@2.1.2
                      24 silly idealTree ├── nan@2.15.0
                      24 silly idealTree ├── napi-build-utils@1.0.2
                      24 silly idealTree ├── node-abi@2.30.1
                      24 silly idealTree ├── noop-logger@0.1.1
                      24 silly idealTree ├── npmlog@4.1.2
                      24 silly idealTree ├── number-is-nan@1.0.1
                      24 silly idealTree ├── object-assign@4.1.1
                      24 silly idealTree ├── once@1.4.0
                      24 silly idealTree ├── prebuild-install@5.3.3
                      24 silly idealTree ├── process-nextick-args@2.0.1
                      24 silly idealTree ├── pump@3.0.0
                      24 silly idealTree ├── rc@1.2.8
                      24 silly idealTree ├── readable-stream@3.4.0
                      24 silly idealTree ├── safe-buffer@5.1.2
                      24 silly idealTree ├── semver@5.7.1
                      24 silly idealTree ├── set-blocking@2.0.0
                      24 silly idealTree ├── signal-exit@3.0.7
                      24 silly idealTree ├── simple-concat@1.0.1
                      24 silly idealTree ├── simple-get@3.1.0
                      24 silly idealTree ├── string_decoder@1.1.1
                      24 silly idealTree ├── string-width@1.0.2
                      24 silly idealTree ├── strip-ansi@3.0.1
                      24 silly idealTree ├── strip-json-comments@2.0.1
                      24 silly idealTree ├── tar-fs@2.0.0
                      24 silly idealTree ├── tar-stream@2.1.0
                      24 silly idealTree ├── tunnel-agent@0.6.0
                      24 silly idealTree ├── util-deprecate@1.0.2
                      24 silly idealTree ├── which-pm-runs@1.1.0
                      24 silly idealTree ├── wide-align@1.1.5
                      24 silly idealTree └── wrappy@1.0.2
                      25 silly install generateActionsToTake
                      26 silly diff-trees filtering actions: includeDev false includeProd true includeOpt true
                      27 timing stage:generateActionsToTake Completed in 31ms
                      28 silly diffTrees action count 0
                      29 silly decomposeActions action count 0
                      30 silly install executeActions
                      31 silly doSerial global-install 0
                      32 verbose correctMkdir /home/iobroker/.npm/_locks correctMkdir not in flight; initializing
                      33 verbose lock using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                      34 silly doParallel extract 0
                      35 silly doReverseSerial unbuild 0
                      36 silly doSerial remove 0
                      37 silly doSerial move 0
                      38 silly doSerial finalize 0
                      39 silly doParallel refresh-package-json 0
                      40 silly doParallel preinstall 0
                      41 silly doSerial build 0
                      42 silly doSerial global-link 0
                      43 silly doParallel update-linked 0
                      44 silly doSerial install 0
                      45 silly doSerial postinstall 0
                      46 verbose unlock done using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                      47 timing stage:executeActions Completed in 79ms
                      48 timing stage:rollbackFailedOptional Completed in 1ms
                      49 silly install runPostinstallTopLevelLifecycles
                      50 silly build @serialport/bindings@2.0.8
                      51 info linkStuff @serialport/bindings@2.0.8
                      52 silly linkStuff @serialport/bindings@2.0.8 has /opt/iobroker/node_modules as its parent node_modules
                      53 silly install @serialport/bindings@2.0.8
                      54 info lifecycle @serialport/bindings@2.0.8~install: @serialport/bindings@2.0.8
                      55 verbose lifecycle @serialport/bindings@2.0.8~install: unsafe-perm in lifecycle true
                      56 verbose lifecycle @serialport/bindings@2.0.8~install: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/opt/iobroker/node_modules/@serialport/bindings/node_modules/.bin:/opt/iobroker/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                      57 verbose lifecycle @serialport/bindings@2.0.8~install: CWD: /opt/iobroker/node_modules/@serialport/bindings
                      58 silly lifecycle @serialport/bindings@2.0.8~install: Args: [
                      58 silly lifecycle   '-c',
                      58 silly lifecycle   'prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild'
                      58 silly lifecycle ]
                      59 timing audit submit Completed in 291ms
                      60 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 292ms
                      61 timing audit body Completed in 2ms
                      62 silly lifecycle @serialport/bindings@2.0.8~install: Returned: code: 1  signal: null
                      63 info lifecycle @serialport/bindings@2.0.8~install: Failed to exec install script
                      64 verbose stack Error: @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                      64 verbose stack Exit status 1
                      64 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
                      64 verbose stack     at EventEmitter.emit (events.js:400:28)
                      64 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
                      64 verbose stack     at ChildProcess.emit (events.js:400:28)
                      64 verbose stack     at maybeClose (internal/child_process.js:1058:16)
                      64 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:293:5)
                      65 verbose pkgid @serialport/bindings@2.0.8
                      66 verbose cwd /opt/iobroker/node_modules/@serialport/bindings
                      67 verbose Linux 4.19.0-19-amd64
                      68 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "--production"
                      69 verbose node v14.19.1
                      70 verbose npm  v6.14.16
                      71 error code ELIFECYCLE
                      72 error errno 1
                      73 error @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                      73 error Exit status 1
                      74 error Failed at the @serialport/bindings@2.0.8 install script.
                      74 error This is probably not a problem with npm. There is likely additional logging output above.
                      75 verbose exit [ 1, true ]
                      
                      

                      Kann mir da jemand einen Denkanstoß geben?

                      VG

                      Thomas BraunT apollon77A 2 Antworten Letzte Antwort
                      0
                      • portyP porty

                        Guten Morgen, ich verzweifel gerade an dem Problem welcher im Eingangspost beschrieben wurde (Serialport).

                        Gestern habe ich ein Update vom Sytem / Nodejs gemacht auf die aktuelle 14.x
                        Der Zigbee adapter hatte die gleiche Probleme, läuft jedoch inzwischen,

                        Sobald ich den Jeelink Adapter jedoch starte bekomme ich Fehlermeldungen im Log.

                        host.NUC
                        2022-03-20 11:24:39.556	error	instance system.adapter.jeelink.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                        host.NUC
                        2022-03-20 11:24:39.556	error	Caught by controller[0]: }
                        host.NUC
                        2022-03-20 11:24:39.556	error	Caught by controller[0]: ]
                        host.NUC
                        2022-03-20 11:24:39.556	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node'
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/bindings.node',
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: tries: [
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) {
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22)
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: at require (internal/modules/cjs/helpers.js:101:18)
                        host.NUC
                        2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:1:36)
                        host.NUC
                        2022-03-20 11:24:39.552	error	Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9)
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.549	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node
                        host.NUC
                        2022-03-20 11:24:39.549	error	Caught by controller[0]: Error: Could not locate the bindings file. Tried:
                        host.NUC
                        2022-03-20 11:24:39.549	error	Caught by controller[0]: ^
                        host.NUC
                        2022-03-20 11:24:39.549	error	Caught by controller[0]: throw err;
                        host.NUC
                        2022-03-20 11:24:39.548	error	Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:135
                        

                        ein "npm install --production" funktioniert jedoch auch nicht

                        porty@NUC:~$ cd /opt/iobroker/node_modules/@serialport/bindings
                        porty@NUC:/opt/iobroker/node_modules/@serialport/bindings$ npm install --production
                        [sudo] Passwort für porty:
                        
                        > @serialport/bindings@2.0.8 install /opt/iobroker/node_modules/@serialport/bindings
                        > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
                        
                        prebuild-install WARN install No prebuilt binaries found (target=14.19.1 runtime=node arch=x64 libc= platform=linux)
                        make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird betreten
                         CXX(target) Release/obj.target/bindings/src/serialport.o
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
                                                                                            ^~~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
                                                                                              ^~~~~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
                                                                                             ^~~~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
                                                                                             ^~~~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
                                                                                           ^~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
                                                                                           ^~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
                        ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                            results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                                       ^
                        In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                        from ../node_modules/nan/nan.h:58,
                                        from ../src/./serialport.h:6,
                                        from ../src/serialport.cpp:1:
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                        ../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                            results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                                       ^
                        In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                        from ../node_modules/nan/nan.h:58,
                                        from ../src/./serialport.h:6,
                                        from ../src/serialport.cpp:1:
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                        ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                            results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                                       ^
                        In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                        from ../node_modules/nan/nan.h:58,
                                        from ../src/./serialport.h:6,
                                        from ../src/serialport.cpp:1:
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
                                                                                                   ^~~~~~~~~~~~~~~~~~~~
                        ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
                        ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
                            results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                                 ^
                        In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                        from ../node_modules/nan/nan.h:58,
                                        from ../src/./serialport.h:6,
                                        from ../src/serialport.cpp:1:
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                          V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                            ^~~
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                        ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
                        ../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                          uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
                                                                                             ^~~~~~~~~~~~~~
                        ../src/serialport.cpp: At global scope:
                        ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
                        SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
                                                   ^
                        ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
                        SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
                                                     ^
                        In file included from ../node_modules/nan/nan.h:58,
                                        from ../src/./serialport.h:6,
                                        from ../src/serialport.cpp:1:
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:793:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
                              (node::addon_register_func) (regfunc),                          \
                                                                  ^
                        /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:827: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:114: Release/obj.target/bindings/src/serialport.o] Fehler 1
                        make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird verlassen
                        gyp ERR! build error
                        gyp ERR! stack Error: `make` failed with exit code: 2
                        gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
                        gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
                        gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
                        gyp ERR! System Linux 4.19.0-19-amd64
                        gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
                        gyp ERR! cwd /opt/iobroker/node_modules/@serialport/bindings
                        gyp ERR! node -v v14.19.1
                        gyp ERR! node-gyp -v v5.1.0
                        gyp ERR! not ok
                        npm ERR! code ELIFECYCLE
                        npm ERR! errno 1
                        npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                        npm ERR! Exit status 1
                        npm ERR!
                        npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
                        npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                        
                        npm ERR! A complete log of this run can be found in:
                        npm ERR!     /home/iobroker/.npm/_logs/2022-03-20T10_27_29_791Z-debug.log
                        
                        

                        und das passende Logfile:

                        0 info it worked if it ends with ok
                        1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install', '--production' ]
                        2 info using npm@6.14.16
                        3 info using node@v14.19.1
                        4 verbose npm-session 376e18a5e07bd759
                        5 silly install runPreinstallTopLevelLifecycles
                        6 silly preinstall @serialport/bindings@2.0.8
                        7 info lifecycle @serialport/bindings@2.0.8~preinstall: @serialport/bindings@2.0.8
                        8 silly install loadCurrentTree
                        9 silly install readLocalPackageData
                        10 timing stage:loadCurrentTree Completed in 498ms
                        11 silly install loadIdealTree
                        12 silly install cloneCurrentTreeToIdealTree
                        13 timing stage:loadIdealTree:cloneCurrentTree Completed in 6ms
                        14 silly install loadShrinkwrap
                        15 timing stage:loadIdealTree:loadShrinkwrap Completed in 154ms
                        16 silly install loadAllDepsIntoIdealTree
                        17 http fetch GET 304 https://registry.npmjs.org/@serialport%2fbinding-mock 445ms (from cache)
                        18 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 480ms
                        19 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 4ms
                        20 silly resolveWithNewModule @serialport/binding-mock@2.0.5 checking installable status
                        21 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 882ms
                        22 timing stage:loadIdealTree Completed in 1151ms
                        23 silly currentTree @serialport/bindings@2.0.8
                        23 silly currentTree ├── @serialport/binding-abstract@2.0.5
                        23 silly currentTree ├── @serialport/parser-delimiter@2.0.2
                        23 silly currentTree ├── @serialport/parser-readline@2.0.2
                        23 silly currentTree ├── ansi-regex@2.1.1
                        23 silly currentTree ├── aproba@1.2.0
                        23 silly currentTree ├─┬ are-we-there-yet@1.1.7
                        23 silly currentTree │ └── readable-stream@2.3.7
                        23 silly currentTree ├── bindings@1.5.0
                        23 silly currentTree ├── bl@3.0.0
                        23 silly currentTree ├── chownr@1.1.4
                        23 silly currentTree ├── code-point-at@1.1.0
                        23 silly currentTree ├── console-control-strings@1.1.0
                        23 silly currentTree ├── core-util-is@1.0.3
                        23 silly currentTree ├── debug@4.1.1
                        23 silly currentTree ├── decompress-response@4.2.1
                        23 silly currentTree ├── deep-extend@0.6.0
                        23 silly currentTree ├── delegates@1.0.0
                        23 silly currentTree ├── detect-libc@1.0.3
                        23 silly currentTree ├── end-of-stream@1.4.4
                        23 silly currentTree ├── expand-template@2.0.3
                        23 silly currentTree ├── file-uri-to-path@1.0.0
                        23 silly currentTree ├── fs-constants@1.0.0
                        23 silly currentTree ├── gauge@2.7.4
                        23 silly currentTree ├── github-from-package@0.0.0
                        23 silly currentTree ├── has-unicode@2.0.1
                        23 silly currentTree ├── inherits@2.0.4
                        23 silly currentTree ├── ini@1.3.8
                        23 silly currentTree ├── is-fullwidth-code-point@1.0.0
                        23 silly currentTree ├── isarray@1.0.0
                        23 silly currentTree ├── mimic-response@2.0.0
                        23 silly currentTree ├── minimist@1.2.5
                        23 silly currentTree ├── mkdirp@0.5.5
                        23 silly currentTree ├── ms@2.1.2
                        23 silly currentTree ├── nan@2.15.0
                        23 silly currentTree ├── napi-build-utils@1.0.2
                        23 silly currentTree ├── node-abi@2.30.1
                        23 silly currentTree ├── noop-logger@0.1.1
                        23 silly currentTree ├── npmlog@4.1.2
                        23 silly currentTree ├── number-is-nan@1.0.1
                        23 silly currentTree ├── object-assign@4.1.1
                        23 silly currentTree ├── once@1.4.0
                        23 silly currentTree ├── prebuild-install@5.3.3
                        23 silly currentTree ├── process-nextick-args@2.0.1
                        23 silly currentTree ├── pump@3.0.0
                        23 silly currentTree ├── rc@1.2.8
                        23 silly currentTree ├── readable-stream@3.4.0
                        23 silly currentTree ├── safe-buffer@5.1.2
                        23 silly currentTree ├── semver@5.7.1
                        23 silly currentTree ├── set-blocking@2.0.0
                        23 silly currentTree ├── signal-exit@3.0.7
                        23 silly currentTree ├── simple-concat@1.0.1
                        23 silly currentTree ├── simple-get@3.1.0
                        23 silly currentTree ├── string_decoder@1.1.1
                        23 silly currentTree ├── string-width@1.0.2
                        23 silly currentTree ├── strip-ansi@3.0.1
                        23 silly currentTree ├── strip-json-comments@2.0.1
                        23 silly currentTree ├── tar-fs@2.0.0
                        23 silly currentTree ├── tar-stream@2.1.0
                        23 silly currentTree ├── tunnel-agent@0.6.0
                        23 silly currentTree ├── util-deprecate@1.0.2
                        23 silly currentTree ├── which-pm-runs@1.1.0
                        23 silly currentTree ├── wide-align@1.1.5
                        23 silly currentTree └── wrappy@1.0.2
                        24 silly idealTree @serialport/bindings@2.0.8
                        24 silly idealTree ├── @serialport/binding-abstract@2.0.5
                        24 silly idealTree ├── @serialport/binding-mock@2.0.5
                        24 silly idealTree ├── @serialport/parser-delimiter@2.0.2
                        24 silly idealTree ├── @serialport/parser-readline@2.0.2
                        24 silly idealTree ├── ansi-regex@2.1.1
                        24 silly idealTree ├── aproba@1.2.0
                        24 silly idealTree ├─┬ are-we-there-yet@1.1.7
                        24 silly idealTree │ └── readable-stream@2.3.7
                        24 silly idealTree ├── bindings@1.5.0
                        24 silly idealTree ├── bl@3.0.0
                        24 silly idealTree ├── chownr@1.1.4
                        24 silly idealTree ├── code-point-at@1.1.0
                        24 silly idealTree ├── console-control-strings@1.1.0
                        24 silly idealTree ├── core-util-is@1.0.3
                        24 silly idealTree ├── debug@4.1.1
                        24 silly idealTree ├── decompress-response@4.2.1
                        24 silly idealTree ├── deep-extend@0.6.0
                        24 silly idealTree ├── delegates@1.0.0
                        24 silly idealTree ├── detect-libc@1.0.3
                        24 silly idealTree ├── end-of-stream@1.4.4
                        24 silly idealTree ├── expand-template@2.0.3
                        24 silly idealTree ├── file-uri-to-path@1.0.0
                        24 silly idealTree ├── fs-constants@1.0.0
                        24 silly idealTree ├── gauge@2.7.4
                        24 silly idealTree ├── github-from-package@0.0.0
                        24 silly idealTree ├── has-unicode@2.0.1
                        24 silly idealTree ├── inherits@2.0.4
                        24 silly idealTree ├── ini@1.3.8
                        24 silly idealTree ├── is-fullwidth-code-point@1.0.0
                        24 silly idealTree ├── isarray@1.0.0
                        24 silly idealTree ├── mimic-response@2.0.0
                        24 silly idealTree ├── minimist@1.2.5
                        24 silly idealTree ├── mkdirp@0.5.5
                        24 silly idealTree ├── ms@2.1.2
                        24 silly idealTree ├── nan@2.15.0
                        24 silly idealTree ├── napi-build-utils@1.0.2
                        24 silly idealTree ├── node-abi@2.30.1
                        24 silly idealTree ├── noop-logger@0.1.1
                        24 silly idealTree ├── npmlog@4.1.2
                        24 silly idealTree ├── number-is-nan@1.0.1
                        24 silly idealTree ├── object-assign@4.1.1
                        24 silly idealTree ├── once@1.4.0
                        24 silly idealTree ├── prebuild-install@5.3.3
                        24 silly idealTree ├── process-nextick-args@2.0.1
                        24 silly idealTree ├── pump@3.0.0
                        24 silly idealTree ├── rc@1.2.8
                        24 silly idealTree ├── readable-stream@3.4.0
                        24 silly idealTree ├── safe-buffer@5.1.2
                        24 silly idealTree ├── semver@5.7.1
                        24 silly idealTree ├── set-blocking@2.0.0
                        24 silly idealTree ├── signal-exit@3.0.7
                        24 silly idealTree ├── simple-concat@1.0.1
                        24 silly idealTree ├── simple-get@3.1.0
                        24 silly idealTree ├── string_decoder@1.1.1
                        24 silly idealTree ├── string-width@1.0.2
                        24 silly idealTree ├── strip-ansi@3.0.1
                        24 silly idealTree ├── strip-json-comments@2.0.1
                        24 silly idealTree ├── tar-fs@2.0.0
                        24 silly idealTree ├── tar-stream@2.1.0
                        24 silly idealTree ├── tunnel-agent@0.6.0
                        24 silly idealTree ├── util-deprecate@1.0.2
                        24 silly idealTree ├── which-pm-runs@1.1.0
                        24 silly idealTree ├── wide-align@1.1.5
                        24 silly idealTree └── wrappy@1.0.2
                        25 silly install generateActionsToTake
                        26 silly diff-trees filtering actions: includeDev false includeProd true includeOpt true
                        27 timing stage:generateActionsToTake Completed in 31ms
                        28 silly diffTrees action count 0
                        29 silly decomposeActions action count 0
                        30 silly install executeActions
                        31 silly doSerial global-install 0
                        32 verbose correctMkdir /home/iobroker/.npm/_locks correctMkdir not in flight; initializing
                        33 verbose lock using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                        34 silly doParallel extract 0
                        35 silly doReverseSerial unbuild 0
                        36 silly doSerial remove 0
                        37 silly doSerial move 0
                        38 silly doSerial finalize 0
                        39 silly doParallel refresh-package-json 0
                        40 silly doParallel preinstall 0
                        41 silly doSerial build 0
                        42 silly doSerial global-link 0
                        43 silly doParallel update-linked 0
                        44 silly doSerial install 0
                        45 silly doSerial postinstall 0
                        46 verbose unlock done using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                        47 timing stage:executeActions Completed in 79ms
                        48 timing stage:rollbackFailedOptional Completed in 1ms
                        49 silly install runPostinstallTopLevelLifecycles
                        50 silly build @serialport/bindings@2.0.8
                        51 info linkStuff @serialport/bindings@2.0.8
                        52 silly linkStuff @serialport/bindings@2.0.8 has /opt/iobroker/node_modules as its parent node_modules
                        53 silly install @serialport/bindings@2.0.8
                        54 info lifecycle @serialport/bindings@2.0.8~install: @serialport/bindings@2.0.8
                        55 verbose lifecycle @serialport/bindings@2.0.8~install: unsafe-perm in lifecycle true
                        56 verbose lifecycle @serialport/bindings@2.0.8~install: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/opt/iobroker/node_modules/@serialport/bindings/node_modules/.bin:/opt/iobroker/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                        57 verbose lifecycle @serialport/bindings@2.0.8~install: CWD: /opt/iobroker/node_modules/@serialport/bindings
                        58 silly lifecycle @serialport/bindings@2.0.8~install: Args: [
                        58 silly lifecycle   '-c',
                        58 silly lifecycle   'prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild'
                        58 silly lifecycle ]
                        59 timing audit submit Completed in 291ms
                        60 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 292ms
                        61 timing audit body Completed in 2ms
                        62 silly lifecycle @serialport/bindings@2.0.8~install: Returned: code: 1  signal: null
                        63 info lifecycle @serialport/bindings@2.0.8~install: Failed to exec install script
                        64 verbose stack Error: @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                        64 verbose stack Exit status 1
                        64 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
                        64 verbose stack     at EventEmitter.emit (events.js:400:28)
                        64 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
                        64 verbose stack     at ChildProcess.emit (events.js:400:28)
                        64 verbose stack     at maybeClose (internal/child_process.js:1058:16)
                        64 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:293:5)
                        65 verbose pkgid @serialport/bindings@2.0.8
                        66 verbose cwd /opt/iobroker/node_modules/@serialport/bindings
                        67 verbose Linux 4.19.0-19-amd64
                        68 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "--production"
                        69 verbose node v14.19.1
                        70 verbose npm  v6.14.16
                        71 error code ELIFECYCLE
                        72 error errno 1
                        73 error @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                        73 error Exit status 1
                        74 error Failed at the @serialport/bindings@2.0.8 install script.
                        74 error This is probably not a problem with npm. There is likely additional logging output above.
                        75 verbose exit [ 1, true ]
                        
                        

                        Kann mir da jemand einen Denkanstoß geben?

                        VG

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

                        @porty sagte in [How-to] Node.js ioBroker richtig updaten-2021/22 Edition:

                        Linux 4.19.0-19-amd64

                        Möglich das der Code nicht mehr gegen einen so alten Kernel gebaut werden kann. Ich würde das Betriebssystem aktualisieren.

                        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
                        • portyP porty

                          Guten Morgen, ich verzweifel gerade an dem Problem welcher im Eingangspost beschrieben wurde (Serialport).

                          Gestern habe ich ein Update vom Sytem / Nodejs gemacht auf die aktuelle 14.x
                          Der Zigbee adapter hatte die gleiche Probleme, läuft jedoch inzwischen,

                          Sobald ich den Jeelink Adapter jedoch starte bekomme ich Fehlermeldungen im Log.

                          host.NUC
                          2022-03-20 11:24:39.556	error	instance system.adapter.jeelink.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                          host.NUC
                          2022-03-20 11:24:39.556	error	Caught by controller[0]: }
                          host.NUC
                          2022-03-20 11:24:39.556	error	Caught by controller[0]: ]
                          host.NUC
                          2022-03-20 11:24:39.556	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node'
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.555	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.554	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/bindings.node',
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: tries: [
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) {
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22)
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: at require (internal/modules/cjs/helpers.js:101:18)
                          host.NUC
                          2022-03-20 11:24:39.553	error	Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:1:36)
                          host.NUC
                          2022-03-20 11:24:39.552	error	Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9)
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-x64/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/compiled/14.19.1/linux/x64/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.551	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.550	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.549	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node
                          host.NUC
                          2022-03-20 11:24:39.549	error	Caught by controller[0]: Error: Could not locate the bindings file. Tried:
                          host.NUC
                          2022-03-20 11:24:39.549	error	Caught by controller[0]: ^
                          host.NUC
                          2022-03-20 11:24:39.549	error	Caught by controller[0]: throw err;
                          host.NUC
                          2022-03-20 11:24:39.548	error	Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:135
                          

                          ein "npm install --production" funktioniert jedoch auch nicht

                          porty@NUC:~$ cd /opt/iobroker/node_modules/@serialport/bindings
                          porty@NUC:/opt/iobroker/node_modules/@serialport/bindings$ npm install --production
                          [sudo] Passwort für porty:
                          
                          > @serialport/bindings@2.0.8 install /opt/iobroker/node_modules/@serialport/bindings
                          > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
                          
                          prebuild-install WARN install No prebuilt binaries found (target=14.19.1 runtime=node arch=x64 libc= platform=linux)
                          make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird betreten
                           CXX(target) Release/obj.target/bindings/src/serialport.o
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Open(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:78:69: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Open, (uv_after_work_cb)EIO_AfterOpen);
                                                                                              ^~~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Update(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:135:71: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EIO_AfterUpdate);
                                                                                                ^~~~~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:175:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Close, (uv_after_work_cb)EIO_AfterClose);
                                                                                               ^~~~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Flush(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:215:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Flush, (uv_after_work_cb)EIO_AfterFlush);
                                                                                               ^~~~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Set(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:270:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_AfterSet);
                                                                                             ^~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:314:68: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_AfterGet);
                                                                                             ^~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘void EIO_AfterGet(uv_work_t*)’:
                          ../src/serialport.cpp:329:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                              results->Set(Nan::New<v8::String>("cts").ToLocalChecked(), Nan::New<v8::Boolean>(data->cts));
                                                                                                                         ^
                          In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                          from ../node_modules/nan/nan.h:58,
                                          from ../src/./serialport.h:6,
                                          from ../src/serialport.cpp:1:
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                          ../src/serialport.cpp:330:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                              results->Set(Nan::New<v8::String>("dsr").ToLocalChecked(), Nan::New<v8::Boolean>(data->dsr));
                                                                                                                         ^
                          In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                          from ../node_modules/nan/nan.h:58,
                                          from ../src/./serialport.h:6,
                                          from ../src/serialport.cpp:1:
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                          ../src/serialport.cpp:331:96: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::FactoryBase<v8::Boolean>::return_t)’
                              results->Set(Nan::New<v8::String>("dcd").ToLocalChecked(), Nan::New<v8::Boolean>(data->dcd));
                                                                                                                         ^
                          In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                          from ../node_modules/nan/nan.h:58,
                                          from ../src/./serialport.h:6,
                                          from ../src/serialport.cpp:1:
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:363:76: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_cb)EIO_AfterGetBaudRate);
                                                                                                     ^~~~~~~~~~~~~~~~~~~~
                          ../src/serialport.cpp: In function ‘void EIO_AfterGetBaudRate(uv_work_t*)’:
                          ../src/serialport.cpp:378:106: error: no matching function for call to ‘v8::Object::Set(v8::Local<v8::String>, Nan::imp::IntegerFactory<v8::Integer>::return_t)’
                              results->Set(Nan::New<v8::String>("baudRate").ToLocalChecked(), Nan::New<v8::Integer>(data->baudRate));
                                                                                                                                   ^
                          In file included from /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:67,
                                          from ../node_modules/nan/nan.h:58,
                                          from ../src/./serialport.h:6,
                                          from ../src/serialport.cpp:1:
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, v8::Local<v8::Value>, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3670:37: note:   candidate expects 3 arguments, 2 provided
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note: candidate: ‘v8::Maybe<bool> v8::Object::Set(v8::Local<v8::Context>, uint32_t, v8::Local<v8::Value>)’
                            V8_WARN_UNUSED_RESULT Maybe<bool> Set(Local<Context> context, uint32_t index,
                                                              ^~~
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/v8.h:3673:37: note:   candidate expects 3 arguments, 2 provided
                          ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_METHOD_ARGS_TYPE)’:
                          ../src/serialport.cpp:409:70: warning: cast between incompatible function types from ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {aka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
                            uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO_AfterDrain);
                                                                                               ^~~~~~~~~~~~~~
                          ../src/serialport.cpp: At global scope:
                          ../src/serialport.cpp:430:28: warning: unnecessary parentheses in declaration of ‘ToParityEnum’ [-Wparentheses]
                          SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8str)) {
                                                     ^
                          ../src/serialport.cpp:449:30: warning: unnecessary parentheses in declaration of ‘ToStopBitEnum’ [-Wparentheses]
                          SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
                                                       ^
                          In file included from ../node_modules/nan/nan.h:58,
                                          from ../src/./serialport.h:6,
                                          from ../src/serialport.cpp:1:
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:793:43: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
                                (node::addon_register_func) (regfunc),                          \
                                                                    ^
                          /home/iobroker/.cache/node-gyp/14.19.1/include/node/node.h:827: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:114: Release/obj.target/bindings/src/serialport.o] Fehler 1
                          make: Verzeichnis „/opt/iobroker/node_modules/@serialport/bindings/build“ wird verlassen
                          gyp ERR! build error
                          gyp ERR! stack Error: `make` failed with exit code: 2
                          gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
                          gyp ERR! stack     at ChildProcess.emit (events.js:400:28)
                          gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:282:12)
                          gyp ERR! System Linux 4.19.0-19-amd64
                          gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
                          gyp ERR! cwd /opt/iobroker/node_modules/@serialport/bindings
                          gyp ERR! node -v v14.19.1
                          gyp ERR! node-gyp -v v5.1.0
                          gyp ERR! not ok
                          npm ERR! code ELIFECYCLE
                          npm ERR! errno 1
                          npm ERR! @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                          npm ERR! Exit status 1
                          npm ERR!
                          npm ERR! Failed at the @serialport/bindings@2.0.8 install script.
                          npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
                          
                          npm ERR! A complete log of this run can be found in:
                          npm ERR!     /home/iobroker/.npm/_logs/2022-03-20T10_27_29_791Z-debug.log
                          
                          

                          und das passende Logfile:

                          0 info it worked if it ends with ok
                          1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install', '--production' ]
                          2 info using npm@6.14.16
                          3 info using node@v14.19.1
                          4 verbose npm-session 376e18a5e07bd759
                          5 silly install runPreinstallTopLevelLifecycles
                          6 silly preinstall @serialport/bindings@2.0.8
                          7 info lifecycle @serialport/bindings@2.0.8~preinstall: @serialport/bindings@2.0.8
                          8 silly install loadCurrentTree
                          9 silly install readLocalPackageData
                          10 timing stage:loadCurrentTree Completed in 498ms
                          11 silly install loadIdealTree
                          12 silly install cloneCurrentTreeToIdealTree
                          13 timing stage:loadIdealTree:cloneCurrentTree Completed in 6ms
                          14 silly install loadShrinkwrap
                          15 timing stage:loadIdealTree:loadShrinkwrap Completed in 154ms
                          16 silly install loadAllDepsIntoIdealTree
                          17 http fetch GET 304 https://registry.npmjs.org/@serialport%2fbinding-mock 445ms (from cache)
                          18 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 480ms
                          19 silly pacote range manifest for @serialport/binding-mock@^2.0.5 fetched in 4ms
                          20 silly resolveWithNewModule @serialport/binding-mock@2.0.5 checking installable status
                          21 timing stage:loadIdealTree:loadAllDepsIntoIdealTree Completed in 882ms
                          22 timing stage:loadIdealTree Completed in 1151ms
                          23 silly currentTree @serialport/bindings@2.0.8
                          23 silly currentTree ├── @serialport/binding-abstract@2.0.5
                          23 silly currentTree ├── @serialport/parser-delimiter@2.0.2
                          23 silly currentTree ├── @serialport/parser-readline@2.0.2
                          23 silly currentTree ├── ansi-regex@2.1.1
                          23 silly currentTree ├── aproba@1.2.0
                          23 silly currentTree ├─┬ are-we-there-yet@1.1.7
                          23 silly currentTree │ └── readable-stream@2.3.7
                          23 silly currentTree ├── bindings@1.5.0
                          23 silly currentTree ├── bl@3.0.0
                          23 silly currentTree ├── chownr@1.1.4
                          23 silly currentTree ├── code-point-at@1.1.0
                          23 silly currentTree ├── console-control-strings@1.1.0
                          23 silly currentTree ├── core-util-is@1.0.3
                          23 silly currentTree ├── debug@4.1.1
                          23 silly currentTree ├── decompress-response@4.2.1
                          23 silly currentTree ├── deep-extend@0.6.0
                          23 silly currentTree ├── delegates@1.0.0
                          23 silly currentTree ├── detect-libc@1.0.3
                          23 silly currentTree ├── end-of-stream@1.4.4
                          23 silly currentTree ├── expand-template@2.0.3
                          23 silly currentTree ├── file-uri-to-path@1.0.0
                          23 silly currentTree ├── fs-constants@1.0.0
                          23 silly currentTree ├── gauge@2.7.4
                          23 silly currentTree ├── github-from-package@0.0.0
                          23 silly currentTree ├── has-unicode@2.0.1
                          23 silly currentTree ├── inherits@2.0.4
                          23 silly currentTree ├── ini@1.3.8
                          23 silly currentTree ├── is-fullwidth-code-point@1.0.0
                          23 silly currentTree ├── isarray@1.0.0
                          23 silly currentTree ├── mimic-response@2.0.0
                          23 silly currentTree ├── minimist@1.2.5
                          23 silly currentTree ├── mkdirp@0.5.5
                          23 silly currentTree ├── ms@2.1.2
                          23 silly currentTree ├── nan@2.15.0
                          23 silly currentTree ├── napi-build-utils@1.0.2
                          23 silly currentTree ├── node-abi@2.30.1
                          23 silly currentTree ├── noop-logger@0.1.1
                          23 silly currentTree ├── npmlog@4.1.2
                          23 silly currentTree ├── number-is-nan@1.0.1
                          23 silly currentTree ├── object-assign@4.1.1
                          23 silly currentTree ├── once@1.4.0
                          23 silly currentTree ├── prebuild-install@5.3.3
                          23 silly currentTree ├── process-nextick-args@2.0.1
                          23 silly currentTree ├── pump@3.0.0
                          23 silly currentTree ├── rc@1.2.8
                          23 silly currentTree ├── readable-stream@3.4.0
                          23 silly currentTree ├── safe-buffer@5.1.2
                          23 silly currentTree ├── semver@5.7.1
                          23 silly currentTree ├── set-blocking@2.0.0
                          23 silly currentTree ├── signal-exit@3.0.7
                          23 silly currentTree ├── simple-concat@1.0.1
                          23 silly currentTree ├── simple-get@3.1.0
                          23 silly currentTree ├── string_decoder@1.1.1
                          23 silly currentTree ├── string-width@1.0.2
                          23 silly currentTree ├── strip-ansi@3.0.1
                          23 silly currentTree ├── strip-json-comments@2.0.1
                          23 silly currentTree ├── tar-fs@2.0.0
                          23 silly currentTree ├── tar-stream@2.1.0
                          23 silly currentTree ├── tunnel-agent@0.6.0
                          23 silly currentTree ├── util-deprecate@1.0.2
                          23 silly currentTree ├── which-pm-runs@1.1.0
                          23 silly currentTree ├── wide-align@1.1.5
                          23 silly currentTree └── wrappy@1.0.2
                          24 silly idealTree @serialport/bindings@2.0.8
                          24 silly idealTree ├── @serialport/binding-abstract@2.0.5
                          24 silly idealTree ├── @serialport/binding-mock@2.0.5
                          24 silly idealTree ├── @serialport/parser-delimiter@2.0.2
                          24 silly idealTree ├── @serialport/parser-readline@2.0.2
                          24 silly idealTree ├── ansi-regex@2.1.1
                          24 silly idealTree ├── aproba@1.2.0
                          24 silly idealTree ├─┬ are-we-there-yet@1.1.7
                          24 silly idealTree │ └── readable-stream@2.3.7
                          24 silly idealTree ├── bindings@1.5.0
                          24 silly idealTree ├── bl@3.0.0
                          24 silly idealTree ├── chownr@1.1.4
                          24 silly idealTree ├── code-point-at@1.1.0
                          24 silly idealTree ├── console-control-strings@1.1.0
                          24 silly idealTree ├── core-util-is@1.0.3
                          24 silly idealTree ├── debug@4.1.1
                          24 silly idealTree ├── decompress-response@4.2.1
                          24 silly idealTree ├── deep-extend@0.6.0
                          24 silly idealTree ├── delegates@1.0.0
                          24 silly idealTree ├── detect-libc@1.0.3
                          24 silly idealTree ├── end-of-stream@1.4.4
                          24 silly idealTree ├── expand-template@2.0.3
                          24 silly idealTree ├── file-uri-to-path@1.0.0
                          24 silly idealTree ├── fs-constants@1.0.0
                          24 silly idealTree ├── gauge@2.7.4
                          24 silly idealTree ├── github-from-package@0.0.0
                          24 silly idealTree ├── has-unicode@2.0.1
                          24 silly idealTree ├── inherits@2.0.4
                          24 silly idealTree ├── ini@1.3.8
                          24 silly idealTree ├── is-fullwidth-code-point@1.0.0
                          24 silly idealTree ├── isarray@1.0.0
                          24 silly idealTree ├── mimic-response@2.0.0
                          24 silly idealTree ├── minimist@1.2.5
                          24 silly idealTree ├── mkdirp@0.5.5
                          24 silly idealTree ├── ms@2.1.2
                          24 silly idealTree ├── nan@2.15.0
                          24 silly idealTree ├── napi-build-utils@1.0.2
                          24 silly idealTree ├── node-abi@2.30.1
                          24 silly idealTree ├── noop-logger@0.1.1
                          24 silly idealTree ├── npmlog@4.1.2
                          24 silly idealTree ├── number-is-nan@1.0.1
                          24 silly idealTree ├── object-assign@4.1.1
                          24 silly idealTree ├── once@1.4.0
                          24 silly idealTree ├── prebuild-install@5.3.3
                          24 silly idealTree ├── process-nextick-args@2.0.1
                          24 silly idealTree ├── pump@3.0.0
                          24 silly idealTree ├── rc@1.2.8
                          24 silly idealTree ├── readable-stream@3.4.0
                          24 silly idealTree ├── safe-buffer@5.1.2
                          24 silly idealTree ├── semver@5.7.1
                          24 silly idealTree ├── set-blocking@2.0.0
                          24 silly idealTree ├── signal-exit@3.0.7
                          24 silly idealTree ├── simple-concat@1.0.1
                          24 silly idealTree ├── simple-get@3.1.0
                          24 silly idealTree ├── string_decoder@1.1.1
                          24 silly idealTree ├── string-width@1.0.2
                          24 silly idealTree ├── strip-ansi@3.0.1
                          24 silly idealTree ├── strip-json-comments@2.0.1
                          24 silly idealTree ├── tar-fs@2.0.0
                          24 silly idealTree ├── tar-stream@2.1.0
                          24 silly idealTree ├── tunnel-agent@0.6.0
                          24 silly idealTree ├── util-deprecate@1.0.2
                          24 silly idealTree ├── which-pm-runs@1.1.0
                          24 silly idealTree ├── wide-align@1.1.5
                          24 silly idealTree └── wrappy@1.0.2
                          25 silly install generateActionsToTake
                          26 silly diff-trees filtering actions: includeDev false includeProd true includeOpt true
                          27 timing stage:generateActionsToTake Completed in 31ms
                          28 silly diffTrees action count 0
                          29 silly decomposeActions action count 0
                          30 silly install executeActions
                          31 silly doSerial global-install 0
                          32 verbose correctMkdir /home/iobroker/.npm/_locks correctMkdir not in flight; initializing
                          33 verbose lock using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                          34 silly doParallel extract 0
                          35 silly doReverseSerial unbuild 0
                          36 silly doSerial remove 0
                          37 silly doSerial move 0
                          38 silly doSerial finalize 0
                          39 silly doParallel refresh-package-json 0
                          40 silly doParallel preinstall 0
                          41 silly doSerial build 0
                          42 silly doSerial global-link 0
                          43 silly doParallel update-linked 0
                          44 silly doSerial install 0
                          45 silly doSerial postinstall 0
                          46 verbose unlock done using /home/iobroker/.npm/_locks/staging-5acb500a3727b98a.lock for /opt/iobroker/node_modules/@serialport/bindings/node_modules/.staging
                          47 timing stage:executeActions Completed in 79ms
                          48 timing stage:rollbackFailedOptional Completed in 1ms
                          49 silly install runPostinstallTopLevelLifecycles
                          50 silly build @serialport/bindings@2.0.8
                          51 info linkStuff @serialport/bindings@2.0.8
                          52 silly linkStuff @serialport/bindings@2.0.8 has /opt/iobroker/node_modules as its parent node_modules
                          53 silly install @serialport/bindings@2.0.8
                          54 info lifecycle @serialport/bindings@2.0.8~install: @serialport/bindings@2.0.8
                          55 verbose lifecycle @serialport/bindings@2.0.8~install: unsafe-perm in lifecycle true
                          56 verbose lifecycle @serialport/bindings@2.0.8~install: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/opt/iobroker/node_modules/@serialport/bindings/node_modules/.bin:/opt/iobroker/node_modules/.bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
                          57 verbose lifecycle @serialport/bindings@2.0.8~install: CWD: /opt/iobroker/node_modules/@serialport/bindings
                          58 silly lifecycle @serialport/bindings@2.0.8~install: Args: [
                          58 silly lifecycle   '-c',
                          58 silly lifecycle   'prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild'
                          58 silly lifecycle ]
                          59 timing audit submit Completed in 291ms
                          60 http fetch POST 200 https://registry.npmjs.org/-/npm/v1/security/audits/quick 292ms
                          61 timing audit body Completed in 2ms
                          62 silly lifecycle @serialport/bindings@2.0.8~install: Returned: code: 1  signal: null
                          63 info lifecycle @serialport/bindings@2.0.8~install: Failed to exec install script
                          64 verbose stack Error: @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                          64 verbose stack Exit status 1
                          64 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
                          64 verbose stack     at EventEmitter.emit (events.js:400:28)
                          64 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
                          64 verbose stack     at ChildProcess.emit (events.js:400:28)
                          64 verbose stack     at maybeClose (internal/child_process.js:1058:16)
                          64 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:293:5)
                          65 verbose pkgid @serialport/bindings@2.0.8
                          66 verbose cwd /opt/iobroker/node_modules/@serialport/bindings
                          67 verbose Linux 4.19.0-19-amd64
                          68 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "--production"
                          69 verbose node v14.19.1
                          70 verbose npm  v6.14.16
                          71 error code ELIFECYCLE
                          72 error errno 1
                          73 error @serialport/bindings@2.0.8 install: `prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild`
                          73 error Exit status 1
                          74 error Failed at the @serialport/bindings@2.0.8 install script.
                          74 error This is probably not a problem with npm. There is likely additional logging output above.
                          75 verbose exit [ 1, true ]
                          
                          

                          Kann mir da jemand einen Denkanstoß geben?

                          VG

                          apollon77A Offline
                          apollon77A Offline
                          apollon77
                          schrieb am zuletzt editiert von apollon77
                          #330

                          @porty Die wichtigsten Infos fehlen:
                          1.) Welcher js-controller?
                          2.) Aktuellste Adapter versionen? Welche jeelink version?

                          Jeelink stable 0.1.3 hat ein serialport 7.x drin, das wird mit nodejs 14 raus sein. Brauchst jeelink denke ich mindestens die 0.1.4

                          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                          1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @homoran sagte in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

                            das steht doch drin

                            <marquee><blink> ... </blink></marquee>
                            

                            Könnte nötig sein 🤣

                            crunchipC Abwesend
                            crunchipC Abwesend
                            crunchip
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #331

                            @alcalzone @Homoran wobei es etwas unglücklich formuliert ist, im ganzen betrachtet.

                            sollte man eventuell darauf hinweisen/ umformulieren, das man direkt zur iobroker installation bei einem Neu-install übergeht, da scheinbar der ein oder andere user nach der Reihe abgearbeitet hat und installiert sich dadurch trotzdem node.js im Vorfeld.

                            umgestiegen von Proxmox auf Unraid

                            HomoranH 1 Antwort Letzte Antwort
                            0
                            • crunchipC crunchip

                              @alcalzone @Homoran wobei es etwas unglücklich formuliert ist, im ganzen betrachtet.

                              sollte man eventuell darauf hinweisen/ umformulieren, das man direkt zur iobroker installation bei einem Neu-install übergeht, da scheinbar der ein oder andere user nach der Reihe abgearbeitet hat und installiert sich dadurch trotzdem node.js im Vorfeld.

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

                              @crunchip sagte in [How-to] Node.js ioBroker richtig updaten-2021/22 Edition:

                              wobei es etwas unglücklich formuliert ist, im ganzen betrachtet.

                              bin für jede Idee dankbar.

                              Ein roter Kasten ganz zu Anfang war/ist für mich das größtmögliche

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

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

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

                              crunchipC 1 Antwort Letzte Antwort
                              0
                              • portyP Offline
                                portyP Offline
                                porty
                                schrieb am zuletzt editiert von
                                #333

                                hmm bekomme beim Antworten immer die Meldung "Forbidden"

                                @Thomas-Braun
                                dann muss ich mal schauen wie :D
                                apt update / upgrade ergibt nichts neues
                                "Linux NUC 4.19.0-19-amd64 #1 SMP Debian 4.19.232-1 (2022-03-07) x86_64"

                                folgende Meldung ist mir noch aufgefallen:
                                adapter "jeelink" seems to be installed for a different version of Node.js. Trying to rebuild it... 1 attempt

                                @apollon77
                                Ups, Sorry vergessen.
                                Controller: 4.0.21
                                Jeelink Tatsächlich die 0.1.3

                                Thomas BraunT apollon77A 2 Antworten Letzte Antwort
                                0
                                • portyP porty

                                  hmm bekomme beim Antworten immer die Meldung "Forbidden"

                                  @Thomas-Braun
                                  dann muss ich mal schauen wie :D
                                  apt update / upgrade ergibt nichts neues
                                  "Linux NUC 4.19.0-19-amd64 #1 SMP Debian 4.19.232-1 (2022-03-07) x86_64"

                                  folgende Meldung ist mir noch aufgefallen:
                                  adapter "jeelink" seems to be installed for a different version of Node.js. Trying to rebuild it... 1 attempt

                                  @apollon77
                                  Ups, Sorry vergessen.
                                  Controller: 4.0.21
                                  Jeelink Tatsächlich die 0.1.3

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

                                  @porty

                                  Ich hatte mich mit den Releases vertan. Kernel 4.19 dürfte aus einem Buster kommen. Das wird im Moment noch als 'oldstable' unterstützt, sieht aber in absehbarer Zeit dem End-of-Life entgegen. Also auf Bullseye gehen musst du in absehbarer Zeit ohne hin.

                                  Installier die jeelink 0.1.4 aus dem Beta-Bereich.

                                  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

                                  portyP 1 Antwort Letzte Antwort
                                  0
                                  • portyP porty

                                    hmm bekomme beim Antworten immer die Meldung "Forbidden"

                                    @Thomas-Braun
                                    dann muss ich mal schauen wie :D
                                    apt update / upgrade ergibt nichts neues
                                    "Linux NUC 4.19.0-19-amd64 #1 SMP Debian 4.19.232-1 (2022-03-07) x86_64"

                                    folgende Meldung ist mir noch aufgefallen:
                                    adapter "jeelink" seems to be installed for a different version of Node.js. Trying to rebuild it... 1 attempt

                                    @apollon77
                                    Ups, Sorry vergessen.
                                    Controller: 4.0.21
                                    Jeelink Tatsächlich die 0.1.3

                                    apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #335

                                    @porty sagte in [How-to] Node.js ioBroker richtig updaten-2021/22 Edition:

                                    hmm bekomme beim Antworten immer die Meldung "Forbidden"

                                    Seite reloaden

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    1 Antwort Letzte Antwort
                                    0
                                    • HomoranH Homoran

                                      @crunchip sagte in [How-to] Node.js ioBroker richtig updaten-2021/22 Edition:

                                      wobei es etwas unglücklich formuliert ist, im ganzen betrachtet.

                                      bin für jede Idee dankbar.

                                      Ein roter Kasten ganz zu Anfang war/ist für mich das größtmögliche

                                      crunchipC Abwesend
                                      crunchipC Abwesend
                                      crunchip
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #336

                                      @homoran sagte in [How-to] Node.js ioBroker richtig updaten-2021/22 Edition:

                                      bin für jede Idee dankbar.

                                      ich seh mir das zeitnah mal an, dann kann ich die Seite auch gleich Zeitgemäß anpassen.

                                      umgestiegen von Proxmox auf Unraid

                                      1 Antwort Letzte Antwort
                                      1
                                      • Thomas BraunT Thomas Braun

                                        @porty

                                        Ich hatte mich mit den Releases vertan. Kernel 4.19 dürfte aus einem Buster kommen. Das wird im Moment noch als 'oldstable' unterstützt, sieht aber in absehbarer Zeit dem End-of-Life entgegen. Also auf Bullseye gehen musst du in absehbarer Zeit ohne hin.

                                        Installier die jeelink 0.1.4 aus dem Beta-Bereich.

                                        portyP Offline
                                        portyP Offline
                                        porty
                                        schrieb am zuletzt editiert von
                                        #337

                                        @thomas-braun
                                        habe die 0.1.4 installiert, läuft Problemlos.

                                        Zum System, sollte ich mich dann mal zeitnah mit beschäftigen wie man das bei linux am besten macht :D
                                        Danke schonmal

                                        @apollon77
                                        hatte ich gemacht. Sobald ich jedoch auf Antworten bzw Zitieren gegangen bin und 2 verschiedene Personen markiert habe ging es nicht.
                                        Habe es dann von Hand gemacht was problemlos funktionierte.
                                        Browser wurde neben reload natürlich auch neu gestartet. Aber egal, ging ja :)

                                        1 Antwort Letzte Antwort
                                        0
                                        • apollon77A apollon77

                                          MOD-EDIT: Diese Anleitung ist veraltet. Update und Fix der nodejs Installation ist mittlerweile in dem Befehl iob nodejs-update enthalten

                                          Hi,

                                          in diesem Artikel möchte ich einen Überblick geben, wie inzwischen (meint anno 2021 mit einem js-controller 3.x bzw 4.x) Node.js Updates bei ioBroker ausgeführt werden sollten bzw können.

                                          Was ist Node.js und warum muss man es updaten?

                                          Node.js ist die Laufzeitumgebung der Programmiersprache JavaScript, in der ioBroker geschrieben ist. Ohne Node.js funktioniert ioBroker nicht. Node.js hast Du initial selbst installiert oder der ioBroker-Installer hat dies für dich getan.

                                          Wie bei vielen Open-Source-Technologien üblich, entwickelt sich Node.js schnell weiter. Kleinere Updates, die die Stabilität und Sicherheit steigern oder gar neue Funktionen hinzufügen, erscheinen regelmäßig.

                                          Node.js-Versionen mit gerader Hauptversionsnummer werden als LTS-Versionen (Long Term Support) bezeichnet und einige Jahre gepflegt (z.B. 12.x). Jedes Jahr kommt eine neue Version ins LTS - in diesem Jahr (2021) ist das Node.js 16, welche im April veröffentlicht wurde und ab Oktober 2021 eine LTS Version wird.

                                          Im gleichem Zug erreichen frühere LTS-Versionen ihr Lebensende (EOL, End of Life). So hat Node.js 8 im April 2020 den EOL-Status erhalten und bekommt damit keine Updates mehr, Nodejs 10.x wird Ende April 2021 Ihr Lebensende erreichen. Es wird also keine Sicherheits-Updates mehr geben! Node.js 12.x wird im April 2022 eol geben.

                                          Alle Node.js-Versionen mit ungeraden Versionsnummern sind Entwicklungsversionen und sollten nicht produktiv genutzt werden.

                                          ioBroker nutzt viele Module und Erweiterungen aus der JavaScript Open-Source Szene, und dort kommt es regelmäßig vor, dass Versionen die EOL gehen zeitnah danach auch nicht weiter unterstützt werden. Das hat im ersten Schritt keine echte Auswirkung, aber mittelfristig wird es also Adapter, und später auch den js-controller geben, der EOL Versionen von Node.js nicht mehr unterstützt.

                                          Node.js 10 wird mit dem js-controller 3.x voll unterstützt. Ab dem js-controller 4.0 (Februar 2022) ist Node.js 10.x nicht mehr untertsützt.

                                          Auf welche Node.js Version updaten?

                                          Aktuell empfiehlt ioBroker die Nutzung von Node.js 16.x.

                                          Folgende Adapter haben momentan Probleme mit Node.js 14:

                                          • jeelink

                                          Folgende Adapter haben momentan Probleme mit Node.js 16:

                                          • jeelink?

                                          *Node.js 16.x wird auch vom js-controller 3.3 grundsätzlich unterstützt, aber nur mit npm 6! npm 7 bzw 8 sind mit dem js-controller 4.0 nutzbar.

                                          Update vorbereiten

                                          Node.js Version prüfen

                                          Bevor man beginnt, sollte man in der Befehlszeile mit dem Befehl

                                          node -v
                                          

                                          überprüfen, welche Version von Node.js gerade installiert ist. Eine gute Idee ist es, diese Versionsangabe auch mit der Node.js-Version im Übersichts-Fenster des ioBroker-Admins für diesen Host zu vergleichen. Sollten sich die Versionen unterscheiden, sind mehrere Node.js-Varianten installiert, was zu Problemen führen kann. Diese Probleme müssen VOR dem Update dann behoben werden! Anleitung zB unter https://forum.iobroker.net/topic/35090/howto-nodejs-installation-und-upgrades-unter-debian/2

                                          Betriebssystem prüfen

                                          Dann auch prüfen was man für ein Betriebssystem hat. Vor allem im Raspi Umfeld sind gern auch älterer Systeme auf basis von "Debian jessie" oder "Debian wheezy" im Einsatz. Für die gibt es nichts was höher ist als Nodejs 10, da steht dann ggf auch ein Betriebssystemupdate an, was wir hier aber nicht behandeln können.
                                          Unterstützte Linux Distributionen sind unter https://github.com/nodesource/distributions#debian-and-ubuntu-based-distributions aufgelistet.
                                          Unter Debian und Ubuntu gibt es mit lsb_release -a eine Ausgabe was man aktuell nutzt.

                                          js-controller Version prüfen

                                          Weiterhin bitte prüfen welche js-controller Version Installiert ist (ebenfalls auf dem Host-Tab im Admin einsehbar).
                                          Bei Versionen VOR js-controller 3.x, wenn möglich bitte zuerst den js-controller aktualisieren. Am besten auf mindestens die 3.2! Hierzu gibt es extra Threads im Forum wie z.B. https://forum.iobroker.net/topic/42385/js-controller-3-2-jetzt-im-stable bzw https://forum.iobroker.net/topic/52886/js-controller-4-0-x-jetzt-für-alle-user-im-stable

                                          Adapter aktualisieren

                                          Damit es nach dem Update zu keinen Inkompatibilitäten oder Probleme kommt, sollte man alle Adapter prüfen und aktualisieren. Vor allem Adapter mit nativen Bestandteilen, wie alles mit Serialport oder Bluetooth können Probleme bereiten. Hier am besten die Adapter-Readme's per Admin oder im GitHub prüfen, ob neue Versionen zur Verfügung stehen die die geplante Node.js Version explizit erst unterstützen.

                                          Bei Updates wo es größere Versionssprünge bei npm gibt (zb Node.js 14->16 updated npm von 6.x auf 8.x) kann es sehr hilfreich sein wenn man schaut ob Adapter die von GitHub installiert wurden inzwischen in der gleichen version auf auf npm liegen und dann ggf von dort nochmals installieren oder updaten. Im Admin werden Adapter die per GitHub installiert wurden gesondert mit einem GitHub Symbol angezeigt. Das hilft auch im Vorfeld Probleme zu vermeiden.

                                          Wenn man diesen Schritt nicht durchführt kann es zu unnötigen Problemen beim update der Adapter kommen!

                                          Backup erstellen

                                          Zuerst muss natürlich unbedingt ein Backup erstellt werden. Dazu kann z.B. der BackItUp-Adapter genutzt oder der Kommandozeilenbefehl

                                          cd /opt/iobroker
                                          iobroker backup
                                          

                                          ausgeführt werden. Das Backup sollte aktuell sein, damit möglichst keine Daten verloren gehen.

                                          Node.js updaten

                                          Für Windows-Systeme kann ich leider gerade nichts genaues sagen, wir schauen das wir das noch ergänzen. Aufruf an die Community: Wer Schritte hat gern als eigener Post oder hier einbringen :-) Danke
                                          Einen Post aus der Community gab es dazu: https://forum.iobroker.net/post/624003

                                          Linux-Systeme

                                          ioBroker stoppen
                                          Zuerst ioBroker stoppen, damit Updates keine Nebeneffekte oder Abstürze verursachen.

                                          iobroker stop
                                          

                                          Bitte anschließend im Webbrowser prüfen, dass der ioBroker-Admin danach wirklich nicht mehr läuft. Sollte er weiterhin aufrufbar sein, dann den Rechner neu starten und nochmals „iobroker stop“ ausführen und erneut testen. Für die Techniker unter uns: Man kann auch mit einem Tool wie "top" prüfen, ob noch Prozesse existieren, die mit "io." beginnen. Die dann am besten mit einem beherzten "sudo kill -9 <ProzessID>" zwangsbeenden.

                                          Node.js updaten
                                          Jetzt aktualisiert man Node.js auf die gewünschte neue Version.

                                          Unter Linux reicht es, dazu den Nodesource-Installationsbefehl für das jeweilige Betriebssystem auszuführen. Verschiedene Varianten (auch Root und Nicht-Root) sind unter https://github.com/nodesource/distributions#debinstall gelistet.

                                          Zum Beispiel lauten die Befehle für einen Raspberry Pi der ein Debian bzw. Raspbian-Image verwendet wie folgt, wenn man nicht als root-User (z.B. richtig mit dem User "pi") angemeldet ist:

                                          curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
                                          sudo apt install -y nodejs
                                          

                                          Für Node.js 16 einfach in der URL oben anstelle der 14 eine 16 reinschreiben.

                                          Für macOS gibt einen Installer auf https://nodejs.org/en/download/ , den man einfach ausführt.

                                          Ob die Aktualisierung geklappt hat, kann man wieder mit dem Befehl

                                          node -v
                                          

                                          überprüfen.

                                          Auch die npm Version sollte mit

                                          npm -v
                                          

                                          geprüft werden. Mit einem js-controller <4 sicherstellen das idealerweise keine 7.x/8.x von npm installiert ist!

                                          ioBroker fixer ausführen
                                          Da die Installation von Node.js einige Einstellungen am System verändert haben kann, ist es jetzt ratsam, den ioBroker-Installationsfixer aufzurufen. Das geschieht mit dem Befehl

                                          iobroker fix
                                          

                                          Er stellt unter anderem die für den Betrieb von ioBroker notwendigen Sicherheitseinstellungen wieder her und prüft und korrigiert alle Berechtigungen. Das kann einen Augenblick dauern, bitte Geduld haben.

                                          Erster ioBroker Neustart NACH Update

                                          Einige genutzte JavaScript Module haben binäre Teile, welche bei einem Node.js Update nicht mehr kompatibel sind und neu erstellt werden müssen.

                                          Automatische Rebuilds

                                          ioBroker versucht seit dem js-controller 3.0 automatisch die Adapter zu erkennen die nicht starten weil Sie aktualisiert werden müssen. Dies funktioniert so das die typischen Fehlermeldungen erkannt werden und ioBroker dann die Aktualisierung versucht.

                                          js-controller 3.x
                                          Zuerst wird ein "rebuild" des betroffenen Adapters ausgeführt, falls das nicht hilft werden die Adapter-Abhängigkeiten aktualisiert.

                                          js-controller 4.0
                                          Zuerst wird versucht alle Adapter zu rebuilden, falls das nicht hilft wird versucht zielgerichtet die relevanten Module neu zu bauen.

                                          Daher kann es sein das der Adapter mehrfach ersucht wird neu zu starten. Hier bitte UNBEDINGT Geduld haben! Erst wenn der Adapter dauerhaft rot bleibt und auch im Log steht das der Rebuild nicht geklappt hat aktiv werden!

                                          Bei einigen Adaptern (zB iot die optionale native Abhängigkeiten haben) funktioniert die automatische Erkennung nicht und das rebuild muss manuell angestoßen werden. Dies kann dadurch erkannt werden das der Adapter "Rot" bleibt und nicht startet oder einzelne Funktionen nicht gehen und das als Fehler im Log steht. Dann sollte das Log geprüft werden (neben Admin stehen Logfiles auch unter /opt/iobroker/log/... zur Verfügung.

                                          Manuelle Rebuilds

                                          Hier zu gibt es iobroker rebuild, bzw die Kommandos die im Log angezeigt werden falls der Automatische Rebuild nicht funktioniert.

                                          Sonderfälle (z.B. Serialport)

                                          Leider gibt es Sonderfälle, wo auch die obigen Optionen das Rebuild nicht erledigen, einer davon ist Serialport.

                                          Dort kann ein Log zB (auch nach allen Rebuild Versuchen) wie folgt aussehen

                                          host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: }
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: ]
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.788 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/compiled/12.16.3/linux/arm/serialport.node'
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/default/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/Release/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/out/Release/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/Debug/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.787 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/out/Debug/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/Release/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/Debug/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: '/opt/iobroker/node_modules/serialport/build/serialport.node',
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: tries: [
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.786 | error | Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1133:30) {
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Object. (/opt/iobroker/node_modules/serialport/lib/bindings/auto-detect.js:16:22)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at require (internal/modules/cjs/helpers.js:77:18)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:1019:19)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:877:14)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.785 | error | Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:977:32)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1133:30)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at Object. (/opt/iobroker/node_modules/serialport/lib/bindings/linux.js:2:36)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.784 | error | Caught by controller[0]: at bindings (/opt/iobroker/node_modules/serialport/node_modules/bindings/bindings.js:93:9)
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/compiled/12.16.3/linux/arm/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/default/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/Release/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.783 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/out/Release/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/Debug/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/out/Debug/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/Release/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.782 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/Debug/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: → /opt/iobroker/node_modules/serialport/build/serialport.node
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: Error: Could not locate the bindings file. Tried:
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.781 | error | Caught by controller[0]: ^
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.780 | error | Caught by controller[0]: throw err
                                          host.SmartHomeCenter | 2020-05-10 09:28:01.780 | error | Caught by controller[0]: /opt/iobroker/node_modules/serialport/node_modules/bindings/bindings.js:96
                                          

                                          Es gibt auch andere Fehlermeldungen die aber alle auf das gleiche hinauslaufen.
                                          Die einfachste Option ist es dann manuell im richtigen Verzeichnis neu zu bauen.
                                          In dem Fall das Verzeichenis mit "bindings" suchen - oben ist das /opt/iobroker/node_modules/serialport/node_modules/bindings ... bei neueren Versionen kann es auch etwas wie /opt/iobroker/node_modules/serialport/node_modules/@serialport/bindings sein.
                                          Dann in dieses Verzeichnis wechseln und npm install --production ausführen. Danach den Adapter nochmal sneu starten, das sollte dann tun.

                                          Ein weiterer Fall sind Adapter mit canvas Modul (ggf echarts oder Mihome-vacuum) wo es Probleme gebe kann.

                                          Andere Sonderfälle muss man sich im Detail ansehen. Bitte unten Posten und wir unterstützen.

                                          Weitere Notfall Optionen

                                          Im früheren Artikel unter https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten sind noch weitere manuelle Möglichkeiten beschrieben ioBroker wieder zum laufen zu bekommen, aber diese sollten an sich nicht mehr nötig sein, gehen aber natürlich auch noch!
                                          Dieser Artikel gilt also auch weiterhin.

                                          Jetzt viel Erfolg und gebt bitte Feedback wie git es geklappt hat oder welche Probleme Ihr habt.

                                          Ingo

                                          R Offline
                                          R Offline
                                          ReGe77
                                          schrieb am zuletzt editiert von ReGe77
                                          #338

                                          @apollon77

                                          erledigt

                                          Vielen lieben Dank für die (sogar für mich ;) ) sehr verständlichen Erläuterungen.
                                          Allerdings bekomme ich die node.js Version nicht höher als 10.24.1.
                                          Mich wundert, dass er die Version 10.x holen will, obwohl ich ja den Link auf die 14er Version eingegeben habe.
                                          Oder muss ich zunächst den JS-controller auf > 4 bringen?

                                          Lieben Dank vorab und viele Grüße,
                                          Reiner

                                          Hier der Code:

                                          pi@iobroker:~ $ curl -fsSL https://deb.nodesource.com/setup_14.x | sudo bash -
                                          
                                          ## Installing the NodeSource Node.js 14.x repo...
                                          
                                          
                                          ## Populating apt-get cache...
                                          
                                          + apt-get update
                                          Holen:1 http://archive.raspberrypi.org/debian buster InRelease [32,6 kB]
                                          OK:2 https://deb.nodesource.com/node_10.x buster InRelease
                                          Holen:3 http://raspbian.raspberrypi.org/raspbian buster InRelease [15,0 kB]
                                          Paketlisten werden gelesen... Fertig
                                          E: Für das Depot »http://archive.raspberrypi.org/debian buster InRelease« wurde der »Suite«-Wert von »testing« in »oldstable« geändert.
                                          N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
                                          E: Für das Depot »http://raspbian.raspberrypi.org/raspbian buster InRelease« wurde der »Suite«-Wert von »stable« in »oldstable« geändert.
                                          N: Sie müssen dies explizit bestätigen, bevor Aktualisierungen von diesem Depot angewendet werden können. Lesen Sie die apt-secure(8)-Handbuchseite, wenn Sie weitere Informationen benötigen.
                                          Error executing command, exiting
                                          pi@iobroker:~ $ sudo apt-get install -y nodejs
                                          Paketlisten werden gelesen... Fertig
                                          Abhängigkeitsbaum wird aufgebaut.
                                          Statusinformationen werden eingelesen.... Fertig
                                          nodejs ist schon die neueste Version (10.24.1-1nodesource1).
                                          0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
                                          

                                          MOD-EDIT: Code in code-tags gesetzt!

                                          Meister MopperM Thomas BraunT 2 Antworten Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

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

                                          537

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          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