Seite 1 von 1
NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 11:55
von dergroddi
Hallo zusammen,
mein openHAB 3 läuft auf einem Raspi 4 unter Raspbian 10 Buster. Dort ist "node.js" in Version 14 (LTS) sowie "npm" in Version 6 installiert.
Nun möchte ich meinen Roborock Staubsauger einbinden und vor allem die Karte auf dem Raspi generieren lassen (der Staubsauger schickt diese Daten bereits per MQTT korrekt an mein openHAB, auf dem Staubsauger läuft die aktuellste Valetudo Version).
Jetzt kommt mein Problem: Zum generieren der Karte ist das Tool
I Cant Believe Its Not Valetudo erforderlich. Dieses muss per "npm install" auf dem Raspi installiert werden.
Dummerweise wurde dieses Projekt mit NPM Version 7 erstellt, auf dem aktuellen Raspi 10 Buster gibts aber nur NPM Version 6 und somit erhalte ich beim kompilieren den Fehler, dass meine NPM Version zu niedrig ist.
Hat da jemand einen Vorschlag zur Lösung? Eine neuere Version von Node.js (inkl. NPM) gibts in den Repo's nicht.
Danke für Hinweise.
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 13:18
von Don Stefano
Hast du schon im Node.js reports geschaut? Für Debian Buster gibt es da schon Version 12 LTS.
Gesendet von meinem SM-G781B mit Tapatalk
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 15:16
von dergroddi
Bitte nicht die node.js Versionsnummer mit der von NPM verwechseln
Für node.js gibt es aktuell sogar Version 17, diese beinhaltet NPM Version 8
Bei mir installiert ist node.js Version 14 (das ist aktuell LTS), diese beinhaltet jedoch lediglich NPM Version 6 (welche zu gering ist)
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 15:24
von Don Stefano
Du musst nodesource zu deinen Paketquellen hinzufügen, dann kannst du jede Version installieren.
Gesendet von meinem SM-G781B mit Tapatalk
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 15:36
von Don Stefano
Hier ist die Installation für Node 10 beschrieben, im ersten Befehl können auch andere Versionen angegeben werden.
https://linuxize.com/post/how-to-instal ... pberry-pi/
Falls du es manuell durchführen willst, kannst du auch die Anleitung benutzen:
https://www.makersupplies.sg/blogs/tuto ... spberry-pi
Gesendet von meinem SM-G781B mit Tapatalk
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 21. Okt 2021 19:28
von dergroddi
Ok, das war der richtige Vorschlag. Und um vielleicht jemand anderem meine Fehlersuche zu ersparen, hier sind die Schritte, die ich durchgeführt habe:
Ausgangslage: Raspbian 10 Buster mit Node-JS 14.x und NPM 6.x
Ziel: mind. Node-JS 16.x mit NPM 7.x und per "npm install" eingerichtetem ICantBelieveItsNotValetudo
1. aktuellen Node-Source zufügen für Raspbian 10 Buster
Code: Alles auswählen
curl -sSL https://deb.nodesource.com/setup_16.x | sudo bash -
2. Update nicht vergessen
3. Node JS (mit NPM) in der neuesten Version installieren (Stand heute Node-JS 17.x und NPM 8.x)
Code: Alles auswählen
sudo apt-get install -y nodejs gcc g++ make
node -v
npm -v
4. Auf Grund von Problemen mit dem Modul "Canvas" mussten noch ein paar zusätzliche Pakete installiert werden
Code: Alles auswählen
sudo apt-get install build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev
5. Canvas installieren per NPM, ggf. noch fixen was angemeckert wird
6. Das gewünschte GIT von ICantBelieveItsNotValetudo per git clone holen und installieren
Code: Alles auswählen
git clone https://github.com/Hypfer/ICantBelieveItsNotValetudo.git
npm install
Re: NPM Version zu alt / Valetudo Staubsauger Software
Verfasst: 17. Jul 2023 15:06
von CGR
Hallo,
danke für die einzelnen Schritte. Ich habe sie nachvollzogen wie beschrieben, und habe nun folgende Versionen:
Raspian 10 (buster)
node 16.15.1
npm 8.11.0
Nach dem Holen von ICantBelieveItsNotValetudo erhalte ich nach „npm Install“ bei „npm start“ allerdings die folgende Fehlermeldung:
Code: Alles auswählen
pi@raspberrypi:~/ICBINV/ICantBelieveItsNotValetudo $ npm start
> i-cant-believe-its-not-valetudo@2022.05.0 start
> node app.js
/home/pi/ICBINV/ICantBelieveItsNotValetudo/node_modules/@napi-rs/canvas/js-binding.js:193
throw loadError
^
Error: /home/pi/ICBINV/ICantBelieveItsNotValetudo/node_modules/@napi-rs/canvas-linux-arm-gnueabihf/skia.linux-arm-gnueabihf.node: undefined symbol: _ZNSt19_Sp_make_shared_tag5_S_eqERKSt9type_info
at Object.Module._extensions..node (node:internal/modules/cjs/loader:1189:18)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Object.<anonymous> (/home/pi/ICBINV/ICantBelieveItsNotValetudo/node_modules/@napi-rs/canvas/js-binding.js:177:29)
at Module._compile (node:internal/modules/cjs/loader:1105:14)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12) {
code: 'ERR_DLOPEN_FAILED'
}
Hat jemand eine Idee, woran das liegen kann?
Vielen Dank und viele Grüße
CGR