NEWS
[How-to] Node.js für ioBroker richtig updaten
-
-
Wie aktualisiert man eigentlich RICHTIG Node.js und npm bei einer Windows Installation die mit dem ioBroker Installer 2.1b durchgeführt wurde?
Es gibt ja im ioBroker Verzeichnis den Ordner nodejs. Kann man den Inhalt einfach gegen eine höhere Version austauschen (Copy & Paste) oder muss man die höhere Version dort hinein installieren? Weil Standard mäßig wird node unter Windows ja in die Programm Ordner / (86) installiert.
Ist auch bei dem ioBroker nodejs Ordner darauf zu achten welches BS (64/32bit) man dort hinein installiert / kopiert?
npm muss dann anschließend ebenfalls aktualisiert werden? ( npm install -g npm@latest )
-
Vielen Dank für die Anleitung!
Ich habe in meinem Produktiv-System (Debian unter Proxmox) letztens erfolgreich Update von node.js 10 auf 12.16.1 durchgeführt
Zur Anleitung:
Punkt 4, a) npm rebuild mäkelte Module in "/node_modules" an, hatte dann nach und nach diese manuell aktualisiert und jew.npm rebuild
neu ausgeführt. Nach der dritten Aktualisierung hatte ich keine Lust mehr. Also dann einfach c) Reset aller Module in node_modules durchgeführt.
Alle Adapter, Scripte usw. laufen sauber wie gewohnt -
.....und ich warte immer noch auf Antwort des Programmierers wegen Bluetooth.
Das Issue auf Github habe ich vor 2 Wochen schon erstellt.
Gruß,
Mathias -
Ich habe gestern IObroker VM auf meinem NUC installiert und das Backup eingespielt.
Der läuft jetzt die ganze Nacht ohne Störungen durch.
Eine Frage noch, die eigentlich nicht hier her gehört:
Gibt's sowas wie ein zurücksetzen oder Reset? Ich muß bald sowieso alles neu machen.
Gruß,
Mathias -
@MathiasJ und warum fragst du hier wenn du schon weißt das es nicht hier her gehört?
Ein eigener thread wäre sinnvoll wenn du bei den cli Kommandos in der Doku nicht selbst fündig wirst. -
So, eine neue SD Karte geflasht, IObroker installiert mit Node 12, IObroker.ble und IObroker.radar laufen immer noch nicht. Wie auf der damaligen Testinstallation läuft Bluetooth low energy nicht.
Siehe auch https://forum.iobroker.net/topic/23703/testinstallation-unter-node-12-6-0/33 -
Hallo zusammen,
ich hänge auch gerade am Update des node.js auf den aktuellsten Stand. Und hänge am epoll-Fehler.
Habe schon
npm uninstall epoll@0.1.22
gemacht und den Adapter deinstalliert und auch eine neue Vesion installiert. Hat baer nichts geholfen. Beim Blick auf die Abhängigkeiten:
@crunchip sagte in [How-to] Node.js für ioBroker richtig updaten:
root@IoBroker:/opt/iobroker# npm ls rpi-gpio iobroker.inst@2.0.3 /opt/iobroker └─┬ iobroker.rpi2@1.0.0 └── rpi-gpio@1.0.0
dann wäre ja die einfachste Lösung, ich deinstalliere den Adapter, da er momentan nicht mehr in Gebrauch ist.
Dieser war noch aus der Raspberry Zeit und Multihostbetrieb.bekomme ich leider einen Fehler:
pi@ioBroker-RasPi:/opt/iobroker $ npm ls rpi-gpio iobroker.inst@1.3.1 /opt/iobroker └── rpi-gpio@1.0.0 extraneous npm ERR! extraneous: rpi-gpio@1.0.0 /opt/iobroker/node_modules/rpi-gpio
Ein weiterer "npm rebuild" zeigt, dass wohl mehrere Versionen von epoll installiert werdne sollen:
> epoll@2.0.9 install /opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll > node-gyp rebuild make: Verzeichnis „/opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll/build“ wird betreten CXX(target) Release/obj.target/epoll/src/epoll.o SOLINK_MODULE(target) Release/obj.target/epoll.node COPY Release/epoll.node make: Verzeichnis „/opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll/build“ wird verlassen > epoll@2.0.9 install /opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll > node-gyp rebuild make: Verzeichnis „/opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll/build“ wird betreten CXX(target) Release/obj.target/epoll/src/epoll.o SOLINK_MODULE(target) Release/obj.target/epoll.node COPY Release/epoll.node make: Verzeichnis „/opt/iobroker/node_modules/iobroker.rpi2/node_modules/epoll/build“ wird verlassen > epoll@0.1.22 install /opt/iobroker/node_modules/rpi-gpio/node_modules/epoll > node-gyp rebuild
Hat da jemand einen Tipp für mich?
-
@Sneak-L8 Auf welchem System? Debian?
-
Ah, sorry, Raspi 3+ mit ioBroker-Image
-
nodejs -v node -v npm -v sudo apt update apt policy nodejs sudo apt upgrade
-
Hab ich gerade durchgeführt und anschließend einen npm rebuild versucht. Immer noch der gleiche Fehler.
epoll.target.mk:103: die Regel für Ziel „Release/obj.target/epoll/src/epoll.o“ scheiterte make: *** [Release/obj.target/epoll/src/epoll.o] Fehler 1 make: Verzeichnis „/opt/iobroker/node_modules/rpi-gpio/node_modules/epoll/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:191:23) gyp ERR! stack at ChildProcess.emit (events.js:198:13) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:248:12) gyp ERR! System Linux 4.14.34-v7+ gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild" gyp ERR! cwd /opt/iobroker/node_modules/rpi-gpio/node_modules/epoll gyp ERR! node -v v10.20.1 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! epoll@0.1.22 install: `node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the epoll@0.1.22 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/2020-04-13T20_33_28_983Z-debug.log
-
@Sneak-L8 Und bricht er das rebuild dort ab oder was ist die Ausgabe am Ende?
-
Ja, der Build wird an dieser Stelle mit Fehler beendet.
Hier mal etwas mehr Log-Output:
-
@Sneak-L8 Welche Version von rpi2 adapter hast Du installiert? Dein "epoll" ist asbach uralt und nicht mit nodejs 10 kompatibel ... update mal rpi2 Adapter
-
@apollon77 Der Adapter RPI2 hat die Version 1.1.1. Laut Änderungsprotokoll gibt es nur eine neuere Version 1.2.0, die die automatische Adapter-Prüfung aber nicht vorschlägt.
Evtl. manuell drüber installieren? aber wie genau?Ich habe jetzt mal gesagt, bestimmte RPI2-Version installieren und die 1.1.1 gewählt. Danach habe ich erneut einen npm rebuild gemacht. Gleicher Fehler. Hab aber gesehen, dass der rebuild mit einem epoll 3.0.0 startet. Also irgendwie will er wohl auch noch die alte Version umwandeln. Aber warum?
npm uninstall epoll@0.1.22 hatte ich schon mal versucht. -
@Sneak-L8 Dann mach mal npm ls im Verzeichnis node_modules/iobroker.rpi2 und Zeig mal die Ausgabe
-
@apollon77 Bitte schön:
pi@ioBroker-RasPi:/opt/iobroker/node_modules/iobroker.rpi2 $ npm ls iobroker.rpi2@1.1.1 /opt/iobroker/node_modules/iobroker.rpi2 ├── UNMET DEPENDENCY @iobroker/adapter-core@^1.0.3 ├─┬ rpi-gpio@2.1.5 │ ├── UNMET DEPENDENCY async-retry@^1.2.1 │ ├─┬ debug@3.2.6 │ │ └── ms@2.1.2 │ └─┬ epoll@2.0.10 │ ├── UNMET DEPENDENCY bindings@^1.5.0 │ └── UNMET DEPENDENCY nan@^2.14.0 └── UNMET DEPENDENCY sync-exec@^0.6.2 npm ERR! missing: @iobroker/adapter-core@^1.0.3, required by iobroker.rpi2@1.1.1 npm ERR! missing: sync-exec@^0.6.2, required by iobroker.rpi2@1.1.1 npm ERR! missing: async-retry@^1.2.1, required by rpi-gpio@2.1.5 npm ERR! missing: bindings@^1.5.0, required by epoll@2.0.10 npm ERR! missing: nan@^2.14.0, required by epoll@2.0.10
-
Hallo,
ich habe da auch mal eine Frage bzgl. dem richtigen Node updaten. Ich habe bei mir Node V10.17.0 am Laufen und mir wird ein mögliches Update auf die V10.20.1 angezeigt. Muss bei solch einem Update ebenfalls ein npm rebuild durchgeführt werden?
Gruß Steffen -
@Steff Ich würde es machen. Steht auch wohl nicht ganz ohne Grund so in der Anleitung drin.