Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [How-to] Node.js ioBroker richtig updaten-2021/22 Edition

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

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

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      Cino last edited by Cino

      Sorry, ich mach das nochmal neu. Das ist alles durcheinander gekommen.

      pi@iobroker:/opt/iobroker/node_modules/zigbee-herdsman/node_modules/@serialport/                                               bindings/build/Release $ npm install --loglevel error --production
      
      > @serialport/bindings@9.2.5 install
      > prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
      
      make: Verzeichnis „/opt/iobroker/node_modules/zigbee-herdsman/node_modules/@seri                                               alport/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_ME                                               THOD_ARGS_TYPE)’:
      ../src/serialport.cpp:78:51: warning: cast between incompatible function types f                                               rom ‘void (*)(uv_work_t*)’ {aka ‘void (*)(uv_work_s*)’} to ‘uv_after_work_cb’ {a                                               ka ‘void (*)(uv_work_s*, int)’} [-Wcast-function-type]
         78 |   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:53: 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]
        135 |   uv_queue_work(uv_default_loop(), req, EIO_Update, (uv_after_work_cb)EI                                               O_AfterUpdate);
            |                                                     ^~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~~~~~~~
      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Close(Nan::NAN_M                                               ETHOD_ARGS_TYPE)’:
      ../src/serialport.cpp:175:52: 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]
        175 |   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_M                                               ETHOD_ARGS_TYPE)’:
      ../src/serialport.cpp:215:52: 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]
        215 |   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_MET                                               HOD_ARGS_TYPE)’:
      ../src/serialport.cpp:271:50: 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]
        271 |   uv_queue_work(uv_default_loop(), req, EIO_Set, (uv_after_work_cb)EIO_A                                               fterSet);
            |                                                  ^~~~~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~
      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Get(Nan::NAN_MET                                               HOD_ARGS_TYPE)’:
      ../src/serialport.cpp:316:50: 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]
        316 |   uv_queue_work(uv_default_loop(), req, EIO_Get, (uv_after_work_cb)EIO_A                                               fterGet);
            |                                                  ^~~~~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~
      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE GetBaudRate(Nan:                                               :NAN_METHOD_ARGS_TYPE)’:
      ../src/serialport.cpp:366:58: 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]
        366 |   uv_queue_work(uv_default_loop(), req, EIO_GetBaudRate, (uv_after_work_                                               cb)EIO_AfterGetBaudRate);
            |                                                          ^~~~~~~~~~~~~~~                                               ~~~~~~~~~~~~~~~~~~~~~~~
      ../src/serialport.cpp: In function ‘Nan::NAN_METHOD_RETURN_TYPE Drain(Nan::NAN_M                                               ETHOD_ARGS_TYPE)’:
      ../src/serialport.cpp:412:52: 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]
        412 |   uv_queue_work(uv_default_loop(), req, EIO_Drain, (uv_after_work_cb)EIO                                               _AfterDrain);
            |                                                    ^~~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~~~~~
      ../src/serialport.cpp: At global scope:
      ../src/serialport.cpp:433:28: warning: unnecessary parentheses in declaration of                                                ‘ToParityEnum’ [-Wparentheses]
        433 | SerialPortParity NAN_INLINE(ToParityEnum(const v8::Local<v8::String>& v8                                               str)) {
            |                            ^
      ../src/serialport.cpp:452:30: warning: unnecessary parentheses in declaration of                                                ‘ToStopBitEnum’ [-Wparentheses]
        452 | SerialPortStopBits NAN_INLINE(ToStopBitEnum(double stopBits)) {
            |                              ^
      In file included from ../node_modules/nan/nan.h:58,
                       from ../src/./serialport.h:13,
                       from ../src/serialport.cpp:1:
      /home/iobroker/.cache/node-gyp/16.13.0/include/node/node.h:821:7: warning: cast                                                between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_                                               ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_fun                                               c’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-                                               function-type]
        821 |       (node::addon_register_func) (regfunc),                          \
            |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /home/iobroker/.cache/node-gyp/16.13.0/include/node/node.h:855:3: note: in expan                                               sion of macro ‘NODE_MODULE_X’
        855 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_                                               usage)
            |   ^~~~~~~~~~~~~
      ../src/serialport.cpp:486:1: note: in expansion of macro ‘NODE_MODULE’
        486 | NODE_MODULE(serialport, init);
            | ^~~~~~~~~~~
        CXX(target) Release/obj.target/bindings/src/serialport_unix.o
      ../src/serialport_unix.cpp: In function ‘int setup(int, OpenBaton*)’:
      ../src/serialport_unix.cpp:179:82: warning: ‘%s’ directive output may be truncat                                               ed writing up to 1023 bytes into a region of size 1005 [-Wformat-truncation=]
        179 | rorString, sizeof(data->errorString), "Error %s Cannot open %s", strerro                                               r(errno), data->path);
            |                                                             ^~
      
      ../src/serialport_unix.cpp:179:13: note: ‘snprintf’ output 20 or more bytes (ass                                               uming 1043) into a destination of size 1024
        179 |     snprintf(data->errorString, sizeof(data->errorString), "Error %s Can                                               not open %s", strerror(errno), data->path);
            |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ../src/serialport_unix.cpp: In function ‘void EIO_Open(uv_work_t*)’:
      ../src/serialport_unix.cpp:89:84: warning: ‘%s’ directive output may be truncate                                               d writing up to 1023 bytes into a region of size 1003 [-Wformat-truncation=]
         89 | rString, sizeof(data->errorString), "Error: %s, cannot open %s", strerro                                               r(errno), data->path);
            |                                                             ^~
      
      ../src/serialport_unix.cpp:89:13: note: ‘snprintf’ output 22 or more bytes (assu                                               ming 1045) into a destination of size 1024
         89 |     snprintf(data->errorString, sizeof(data->errorString), "Error: %s, c                                               annot open %s", strerror(errno), data->path);
            |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        CXX(target) Release/obj.target/bindings/src/poller.o
        CXX(target) Release/obj.target/bindings/src/serialport_linux.o
        SOLINK_MODULE(target) Release/obj.target/bindings.node
        COPY Release/bindings.node
      make: Verzeichnis „/opt/iobroker/node_modules/zigbee-herdsman/node_modules/@seri                                               alport/bindings/build“ wird verlassen
      
      added 65 packages, and audited 66 packages in 29s
      
      8 packages are looking for funding
        run `npm fund` for details
      
      found 0 vulnerabilities
      
      
      host.iobroker
      2021-11-19 06:30:40.587	info	iobroker npm-rebuild: exit 0
      host.iobroker
      2021-11-19 06:30:39.564	info	iobroker npm-rebuild: Rebuild zigbee done
      host.iobroker
      2021-11-19 06:30:39.539	info	iobroker npm-rebuild: npm ERR! A complete log of this run can be found in:npm ERR! /home/iobroker/.npm/_logs/2021-11-19T05_30_39_483Z-debug.log
      host.iobroker
      2021-11-19 06:30:39.531	info	iobroker npm-rebuild:
      host.iobroker
      2021-11-19 06:30:39.483	info	iobroker npm-rebuild: npm ERR! Fix the upstream dependency conflict, or retrynpm ERR! this command with --force, or --legacy-peer-depsnpm ERR! to accept an incorrect (and potentially broken) dependency resolution.npm ERR! npm ERR! See /home/iobroker/.npm/eresolve-report.txt for a full report.
      host.iobroker
      2021-11-19 06:30:39.480	info	iobroker npm-rebuild: npm ERR! While resolving: iobroker.zigbee@1.6.6npm ERR! Found: eslint@7.32.0npm ERR! node_modules/eslintnpm ERR! dev eslint@"^7.18.0" from the root projectnpm ERR! npm ERR! Could not resolve dependency:npm ERR! peer eslint@"4.x" from lint-diff@1.2.1npm ERR! node_modules/lint-diffnpm ERR! dev lint-diff@"*" from the root projectnpm ERR!
      host.iobroker
      2021-11-19 06:30:39.462	info	iobroker npm-rebuild: npm ERR!
      host.iobroker
      2021-11-19 06:30:39.461	info	iobroker npm-rebuild: npm ERR! ERESOLVE unable to resolve dependency tree
      host.iobroker
      2021-11-19 06:30:39.441	info	iobroker npm-rebuild: npm ERR! code ERESOLVE
      host.iobroker
      2021-11-19 06:30:38.629	info	instance system.adapter.heatingcontrol.0 started with pid 9210
      host.iobroker
      2021-11-19 06:30:34.124	info	instance system.adapter.lgtv.0 started with pid 9096
      host.iobroker
      2021-11-19 06:30:33.277	info	iobroker npm-rebuild: npm install --loglevel error --production (System call1) in "/opt/iobroker/node_modules/iobroker.zigbee"
      host.iobroker
      2021-11-19 06:30:31.860	info	iobroker rebuild zigbee --install
      
      apollon77 1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 @Cino last edited by

        @cino kannst du zigbee vllt aktualisieren? Da scheint bei dir irgendwas rech strange zu sein. Ansonsten lösch das node_modules/iobroker.zigbee Verzeichnuis und starte die Instanz neu, dann sollte es neu installiert weren. Hat mich dem Node.js Update weniger zu tun ...

        1 Reply Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active last edited by

          @cino gemeint war eher die Ausgabe von node/nodejs/npm

          1 Reply Last reply Reply Quote 0
          • Diginix
            Diginix last edited by

            @apollon77 Habe heute nodeJS von 12 auf 14 aktualisiert und dabei noch den JS-Controller von 3.3.18 auf 3.3.19.
            Update selbst inkl:

            iobroker fix
            npm rebuild
            

            Danach verhielten sich dennoch div. Adapter merkwürdig. Der web ist z.T. im loop pro Sek mehrfach abgestürzt mit:

            2021-11-19 12:54:18 - warn: web.0 (2835245) Cannot parse "undefined"
            2021-11-19 12:54:18 - warn: web.0 (2835245) socket.io [use] unknown user
            

            Außerdem wurden dann mehrere Adapter immer neu gestartet mit Meldung "already running".
            Am Ende habe ich über alle /opt/iobroker/node_modules/iobroker.%adapter% ein

            iobroker rebuild %adapter% --install
            

            laufen lassen.
            In /opt/iobroker/node_modules gibt es natürlich noch viele Ordner die nicht nicht "iobroker.xxx" heißen. Ob darin nun noch was aus nodeJS 12 Zeiten ist und rebuilded werden müsste, kann ich nicht sagen.
            Nach einem kompletten Reboot läuft nun seit 1h erstmal alles ruhig.

            1 Reply Last reply Reply Quote 0
            • Diginix
              Diginix @backfisch88 last edited by Diginix

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

              Hallo

              jedes mal (schon öfter probiert), wenn ich auf nodejs 14 upgrade läuft danach der mihome-vacuum Adapter nicht mehr.
              Es läuft alles Reibungslos, bis es ein Befehl von IOBroker kommt... nach einigen Minuten ist er wieder verbunden (manchmal auch länger) und das Spiel geht von vorne los
              mit node 12.X lief alles normal

              Wie du ein Post weiter oben lesen kannst, habe ich heute auch ein Rundumschlag mit Updates gemacht.
              Ich nutze mihome-vacuum in Ver. 3.3.1 mit einem Xiaomi M1S. Der Adapter funktionierte nach dem dem nodeJS Update sofort, nur Canvas musste für die Karte neu gebaut werden. Seit dem hat der Sauger auch schon 3 Räume mit immer aktueller Karte gesaugt.

              B 1 Reply Last reply Reply Quote 0
              • C
                Cino last edited by

                Heute morgen aufgewacht und der Zigbee Adapter lief. Keine Ahnung warum.

                Thomas Braun 1 Reply Last reply Reply Quote 0
                • Thomas Braun
                  Thomas Braun Most Active @Cino last edited by

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

                  Heute morgen aufgewacht und der Zigbee Adapter lief. Keine Ahnung warum.

                  Vermutlich, weil der rebuild zwischenzeitlich durchgelaufen ist.

                  C 1 Reply Last reply Reply Quote 0
                  • B
                    backfisch88 @apollon77 last edited by

                    @apollon77 habe wieder auf 12.X Downgraded.

                    egal was man macht... nach einem Befehl ist der Adapter auf rot... Staubsauger reagiert in der App, aber im Adapter eben nicht... auch nach neustart des Adapters manchmal nicht... Reconnect Zeit zwischen 2 Minuten und X Stunden

                    Thomas Braun 1 Reply Last reply Reply Quote 0
                    • B
                      backfisch88 @Diginix last edited by

                      @diginix saugen tut er... aber eben nur ein mal... dann geht der Adapter sofort auf Rot

                      1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @backfisch88 last edited by

                        @backfisch88

                        Dann mach beim Adapter ein Issue auf, damit der Maintainer sich das ggf. anschauen kann. Wobei sich das sehr nach einem Individual-Problem anhört.

                        B 1 Reply Last reply Reply Quote 0
                        • C
                          Cino @Thomas Braun last edited by

                          @thomas-braun said in [How-to] Node.js für ioBroker richtig updaten - 2021 Edition:

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

                          Heute morgen aufgewacht und der Zigbee Adapter lief. Keine Ahnung warum.

                          Vermutlich, weil der rebuild zwischenzeitlich durchgelaufen ist.

                          Ja aber in den Logs stand doch von wegen 3 mal versucht und der Adapter wird deaktiviert.

                          G 1 Reply Last reply Reply Quote 0
                          • G
                            guergen @Cino last edited by guergen

                            Nach dem Update von nodejs auf v14.18.1 kommt beim maxcul-Adapter folgender Fehler:

                            maxcul.0
                            	2021-11-19 19:32:59.319	error	Exception-Code: ERR_DLOPEN_FAILED: Module did not self-register: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node'.
                            maxcul.0
                            	2021-11-19 19:32:59.319	error	Error: Module did not self-register: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node'. at Object.Module._extensions..node (internal/modules/cjs/loader.js:1144:18) at Module.load (internal/modules/cjs/loader.js:950:32) at Function.Module._load (internal/modules/cjs/loader.js:790:12) at Module.require (internal/modules/cjs/loader.js:974:19) at require (internal/modules/cjs/helpers.js:93:18) at bindings (/opt/iobroker/node_modules/bindings/bindings.js:112:48) at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:2:36) at Module._compile (internal/modules/cjs/loader.js:1085:14) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10) at Module.load (internal/modules/cjs/loader.js:950:32) at Function.Module._load (internal/modules/cjs/loader.js:790:12) at Module.require (internal/modules/cjs/loader.js:974:19) at require (internal/modules/cjs/helpers.js:93:18) at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22) at Module._compile (internal/modules/cjs/loader.js:1085:14) at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
                            maxcul.0
                            	2021-11-19 19:32:59.317	error	uncaught exception: Module did not self-register: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node'.
                            

                            Werde aus den ganzen "Lösungen" nicht ganz schlau....
                            npm rebuild hat nichts gebracht
                            NPM v6.14.15
                            js-controller 3.3.19

                            Beim Slave hat alles geklappt
                            Bin jetzt auf dem Host auf 12 zurück, ohne Heizung geht es grade nicht 😉

                            Thomas Braun apollon77 2 Replies Last reply Reply Quote 0
                            • Thomas Braun
                              Thomas Braun Most Active @guergen last edited by

                              @guergen

                              maxcul deinstallieren und nochmal neu installieren.

                              1 Reply Last reply Reply Quote 0
                              • apollon77
                                apollon77 @guergen last edited by

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

                                /opt/iobroker/node_modules/@serialport/bindings

                                Mal in das Verzeichnis wechseln und dort ein "npm install --production" machen

                                M 1 Reply Last reply Reply Quote 1
                                • M
                                  Marty56 @apollon77 last edited by

                                  @apollon77 Ich habe node v12.22.7. Ist das richtig, dass ich noch ca. 2 Jahre mit dem Update warten kann?

                                  J Thomas Braun apollon77 3 Replies Last reply Reply Quote 0
                                  • J
                                    Jan1 @Marty56 last edited by

                                    @marty56
                                    Theoretisch ja nur praktisch nicht sinnvoll. Ich bin schon lange auf 14 und null Probleme 😉

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      Marty56 @Jan1 last edited by

                                      @jan1 Warum meinst Du, dass es nur theoretisch sinnvoll ist?

                                      Wenn ich mir den Thread ansehe, dann brauche ich die ganzen Probleme erstmal nicht.

                                      J 1 Reply Last reply Reply Quote 0
                                      • J
                                        Jan1 @Marty56 last edited by Jan1

                                        @marty56
                                        Ich habe nicht alles gelesen und das meiste was ich gelesen habe, sind wohl (mal wieder) mitgeschleppte Probleme, die versteckt die ganze Zeit schon da waren und nun eben erst deutlich zu sehen sind. Was wiederum nicht wirklich was mit Node 14 zu tun hat, sondern ehr mit zerfledderten Systemen, die jetzt eben mal ein Update oder gleich mehrere erhalten haben.
                                        Ergo, bleib aktuell und habe keine Problem 😉

                                        Es gibt so gut wie kein Grund auf 12 zu bleiben.

                                        Probier es einfach aus und schau obs läuft, zurück geht genau so schnell wie hoch.
                                        Hatte ne Zeitlang produktiv 16 nmit NPM 7 laufen und keine Probleme, dann mit NPM 6 und weil ich eben gerne bastle, wieder zurück auf 14 und alles ohne Ärger.

                                        1 Reply Last reply Reply Quote 0
                                        • Thomas Braun
                                          Thomas Braun Most Active @Marty56 last edited by Thomas Braun

                                          @marty56

                                          RELEASE	STATUS	INITIAL RELEASE	ACTIVE LTS START	MAINTENANCE LTS START	END-OF-LIFE
                                          v12		2019-04-23	2019-10-21	        2020-11-30	        2022-04-30
                                          

                                          https://nodejs.org/en/about/releases/

                                          Für nodeJS12 also ist im April 22 Schicht. Also kannst du auch jetzt wechseln. Die Erfahrung zeigt: Je länger gewartet wird, umso mehr Probleme gibt es

                                          1 Reply Last reply Reply Quote 0
                                          • TepMan
                                            TepMan last edited by

                                            Nach dem Update auf nodejs 14 startet der Jeelink-Adapter nicht mehr:

                                            host.raspi4
                                            2021-11-20 10:50:26.370	error	instance system.adapter.jeelink.0 terminated with code 1 (JS_CONTROLLER_STOPPED)
                                            host.raspi4
                                            2021-11-20 10:50:26.369	error	Caught by controller[0]: }
                                            host.raspi4
                                            2021-11-20 10:50:26.369	error	Caught by controller[0]: ]
                                            host.raspi4
                                            2021-11-20 10:50:26.368	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-arm/bindings.node'
                                            host.raspi4
                                            2021-11-20 10:50:26.368	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.368	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.367	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.366	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/compiled/14.18.1/linux/arm/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.366	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.365	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.364	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.364	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.364	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.363	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.363	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.362	error	Caught by controller[0]: '/opt/iobroker/node_modules/@serialport/bindings/build/bindings.node',
                                            host.raspi4
                                            2021-11-20 10:50:26.362	error	Caught by controller[0]: tries: [
                                            host.raspi4
                                            2021-11-20 10:50:26.361	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14) {
                                            host.raspi4
                                            2021-11-20 10:50:26.361	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/index.js:14:22)
                                            host.raspi4
                                            2021-11-20 10:50:26.360	error	Caught by controller[0]: at require (internal/modules/cjs/helpers.js:93:18)
                                            host.raspi4
                                            2021-11-20 10:50:26.359	error	Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:974:19)
                                            host.raspi4
                                            2021-11-20 10:50:26.359	error	Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:790:12)
                                            host.raspi4
                                            2021-11-20 10:50:26.358	error	Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:950:32)
                                            host.raspi4
                                            2021-11-20 10:50:26.358	error	Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1114:10)
                                            host.raspi4
                                            2021-11-20 10:50:26.357	error	Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1085:14)
                                            host.raspi4
                                            2021-11-20 10:50:26.356	error	Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/@serialport/bindings/lib/linux.js:1:36)
                                            host.raspi4
                                            2021-11-20 10:50:26.356	error	Caught by controller[0]: at bindings (/opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:126:9)
                                            host.raspi4
                                            2021-11-20 10:50:26.356	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/lib/binding/node-v83-linux-arm/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.355	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/default/install-root/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.354	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/debug/install-root/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.354	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/addon-build/release/install-root/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.353	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/compiled/14.18.1/linux/arm/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.352	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/default/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.351	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Release/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.351	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Release/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.350	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/Debug/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.349	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/out/Debug/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.349	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Release/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.348	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/Debug/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.347	error	Caught by controller[0]: → /opt/iobroker/node_modules/@serialport/bindings/build/bindings.node
                                            host.raspi4
                                            2021-11-20 10:50:26.347	error	Caught by controller[0]: Error: Could not locate the bindings file. Tried:
                                            host.raspi4
                                            2021-11-20 10:50:26.342	error	Caught by controller[0]: ^
                                            host.raspi4
                                            2021-11-20 10:50:26.341	error	Caught by controller[0]: throw err;
                                            host.raspi4
                                            2021-11-20 10:50:26.332	error	Caught by controller[0]: /opt/iobroker/node_modules/@serialport/bindings/node_modules/bindings/bindings.js:135
                                            

                                            Ich habe schon versucht, den Adapter neu zu bauen, steigt mit einem Fehler aus:

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

                                            Anhand des Outputs ist zu sehen, das serialport wohl Probleme macht, habe versucht, das nach der Anleitung oben direkt neu zu bauen, klappt leider auch nicht:

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

                                            Bin jetzt mit meinem Latein am Ende und bräuchte eure Hilfe.

                                            js-controller ist 3.3.18, admin ist 5.x, weitere Daten zum System:

                                            Plattform
                                            linux
                                            Betriebssystem
                                            linux
                                            Architektur
                                            arm
                                            CPUs
                                            4
                                            Geschwindigkeit
                                            1500 MHz
                                            Modell
                                            ARMv7 Processor rev 3 (v7l)
                                            RAM
                                            7.71 GB
                                            System-Betriebszeit
                                            01:09:25
                                            Node.js
                                            v14.18.1 (Empfohlene Version v12.22.7)
                                            NPM
                                            6.14.15
                                            Datenträgergröße
                                            457.2 GB
                                            freier Festplattenspeicher
                                            425.39 GB
                                            Anzahl der Adapter
                                            363
                                            Betriebszeit
                                            00:47:26
                                            Aktive Instanzen
                                            18
                                            location
                                            /opt/iobroker/
                                            Hostname
                                            raspi4

                                            Thomas Braun 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            452
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            97
                                            812
                                            319496
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo