NEWS
Diskussion zum HowTo nodejs-Installation und upgrade
-
@D3ltoroxp
Der Teil 2 bezieht sich auf eine 'falsche' Installation und wie man die wieder gerade rückt.Teil 2: Installationen geradeziehen
Und was mache ich, wenn die Installation nicht so aussieht? -
@Thomas-Braun Ah sorry, mein Fehler, Teil 1.1 nicht Teil 2.
Teil 1.0 ist klar, upgrade auf von z.b 10x auf 12x oder eben wenn man unter 12x ist auf die neuste 12x updaten. Aber Teil 1.1 hab ich noch nie gemacht.Wenn ich nur 12x updaten möchte interessiert nicht Teil 1.1 indem Fall nicht, da ich ja nicht auf z.b. 14x upgraden möchte. So jetzt hab ichs glaub.
-
@D3ltoroxp
Teil 1.1 ist für ein Upgrade von z. B. 10 auf 12 oder von 12 auf 14 usw. vorgesehen.
Einfach eine Ziffer in der nodesource.list auszutauschen finde ich wesentlich einfacher als über curl das skript von nodesource selber wieder ranzuziehen. Schlussendlich macht das dann auch nichts anderes mehr. Und man hat je nach Aufbau der Datei auch noch easy Zugang zu anderen Versionszweigen. -
@Thomas-Braun
Servus,
jetzt muss ich hier leider nochmal schreiben damit nichts schief läuft...pi@ioBroker-RasPi:~ $ which nodejs && nodejs -v && which node && node -v && whic h npm && npm -v && apt policy nodejs /usr/bin/nodejs v14.11.0 /usr/local/bin/node v12.18.4 /usr/local/bin/npm 6.14.6 nodejs: Installiert: 14.11.0-1nodesource1 Installationskandidat: 14.11.0-1nodesource1 Versionstabelle: *** 14.11.0-1nodesource1 500 500 https://deb.nodesource.com/node_14.x stretch/main armhf Packages 100 /var/lib/dpkg/status 8.11.1~dfsg-2~bpo9+1 500 500 http://archive.raspberrypi.org/debian stretch/main armhf Packages 4.8.2~dfsg-1 500 500 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages
Wie wir sehen ist der Pfad von node und npm falsch.
In der Beschreibung heißt es erstmal die Datei entfernen...
D.h. für mich im Klartext:sudo rm /usr/local/bin/node
Und
sudo rm /usr/local/bin/npm
Außerdem hat nodejs und node eine unterschiedliche Version.
Sorry dass ich so plump frage - hab mir allerdings den aktuellen Stand recht schwer ergoogelt und möchte nichts zerschießen...
Bei mir läuft soweit alles bis auf der Zigbee Adapter. Wobei der nach ein paar Problemchen trotz der o.g. Fehler bis zu einem Restart lief.Ich möchte aber das System sauber ziehen.
PS: außerdem muss ich meinen orangePi auch noch updaten
-
@Habedere Und die Frage ist?
Ich würde allerdings node12 installieren, nicht node14. Die war bei mir auch nur zufällig aktiv, als ich die Anleitung geschrieben habe. -
@Thomas-Braun sagte in [HowTo] Nodejs-Installation und Upgrades unter Debian:
@Habedere Und die Frage ist?
Ich würde allerdings node12 installieren, nicht node14. Die war bei mir auch nur zufällig aktiv, als ich die Anleitung geschrieben habe.Deiner Antwort nach scheint mein Zitat bzw. Wiederholung deiner Beschreibung korrekt zu sein.
Dann probier ich das gleich malpi@ioBroker-RasPi:~ $ sudo rm /usr/local/bin/node pi@ioBroker-RasPi:~ $ sudo rm /usr/local/bin/npm pi@ioBroker-RasPi:~ $ which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs /usr/bin/nodejs v14.11.0 /usr/bin/node v14.11.0 /usr/bin/npm 6.14.8 nodejs: Installiert: 14.11.0-1nodesource1 Installationskandidat: 14.13.0-1nodesource1 Versionstabelle: 14.13.0-1nodesource1 500 500 https://deb.nodesource.com/node_14.x stretch/main armhf Packages *** 14.11.0-1nodesource1 100 100 /var/lib/dpkg/status 8.11.1~dfsg-2~bpo9+1 500 500 http://archive.raspberrypi.org/debian stretch/main armhf Packages 4.8.2~dfsg-1 500 500 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages
Hmm das ging ja easy - was mach ich mir auch ins Hemd^^
14er Version ist jetzt schon drauf - soll ich ein Downgrade auf 12 durchführen oder "lohnt" sich der Aufwand nur bei einer Neuinstallation? Bzw. zum Beispiel beim Update des OrangePi
-
@Habedere
Ja, die im 'falschen' Pfad befindlichen Versionen müssen da weg. Sonst bleiben die da immer stehen. Das ist nämlich bei dir gerade der Fall. Du hast über den Paketmanager apt node14 reingeholt, die zuvor 'irgendwie' installierte 12er-Version steht fix im Pfad /usr/local/bin
Da hat die aber nix zu suchen.
Erklärung: Wenn node von Programmen aufgerufen wird, dann sucht das System in den folgenden Pfaden nach der entsprechenden Datei:echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/game
Nach dem ersten Treffer (bei dir in /usr/local/bin) sucht das System nicht mehr weiter.
Ich würde wie gesagt node12 empfehlen, bei node14 kann da noch die ein oder andere Stolperfalle lauern. Ein Downgrade ist ja mit der obigen Anleitung auch easy getan.
-
@Thomas-Braun
Vielen Dank! Mein Zigbee Adapter läuft auf jeden Fall schon mal.
Das hört sich jetzt für die wahrscheinlich verdammt blöd an - aber versteh sogar bei der Downgradeanleitung nur die Hälfte^^
Möchte dir auch keinen weiteren Aufwand machen. Sofern alles läuft wie es soll, lass ich mal auf 14 stehen. Sobald mehr Probleme auftauchen versuch ich mich nochmal am Downgrade.Jetzt ist erst mal ein Update vom Orange dran.
-
@Habedere
Dann würde ich aber mindestens node14 auf den letzten Stand bringen. -
@Thomas-Braun
Gesagt getanpi@ioBroker-RasPi:~ $ which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs /usr/bin/nodejs v14.13.0 /usr/bin/node v14.13.0 /usr/bin/npm 6.14.8 nodejs: Installiert: 14.13.0-1nodesource1 Installationskandidat: 14.13.0-1nodesource1 Versionstabelle: *** 14.13.0-1nodesource1 500 500 https://deb.nodesource.com/node_14.x stretch/main armhf Packages 100 /var/lib/dpkg/status 8.11.1~dfsg-2~bpo9+1 500 500 http://archive.raspberrypi.org/debian stretch/main armhf Packages 4.8.2~dfsg-1 500 500 http://raspbian.raspberrypi.org/raspbian stretch/main armhf Packages
Danke nochmal
-
@Habedere Gerne.
Kann halt sein, das ein anderer Supporter dir sagt, du sollst auf node12 gehen, wenn du mit irgendeinem anderen Problem bei einem Adapter ankommst. -
@Thomas-Braun
Jopp - hab ich auf dem Schirm.
Hätte ich ja auch gleich daruf kommen können, wenn man sich den Infoadapter ansieht:v14.13.0 (Es gibt eine neuere Version: v14.9.0 - Empfohlene Version v12.18.3)
Versuch macht kluch
-
@Habedere sagte in [HowTo] Nodejs-Installation und Upgrades unter Debian:
v14.13.0 (Es gibt eine neuere Version: v14.9.0
Ist aber auch nicht logisch. Welcher Browser?
-
@Thomas-Braun
ChromeHier mal kurz die Daten des Orange
root@orangepizero:~# which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs /usr/bin/nodejs v8.16.0 /usr/bin/node v8.16.0 /usr/bin/npm 6.4.1 nodejs: Installed: 8.16.0-1nodesource1 Candidate: 8.16.0-1nodesource1 Version table: *** 8.16.0-1nodesource1 500 500 https://deb.nodesource.com/node_8.x stretch/main armhf Packages 100 /var/lib/dpkg/status 8.11.1~dfsg-2~bpo9+1 100 100 http://httpredir.debian.org/debian stretch-backports/main armhf Packages 4.8.2~dfsg-1 500 500 http://httpredir.debian.org/debian stretch/main armhf Packages
Js-controller ist noch 1.4.2 drauf.
Da ich es ja scheinbar am Raspi schon vergeigt habe, ist jetzt fraglich ob meine vorgehensweise korrekt war.
Ich arbeite mich einfach nach der u.g. Anleitung durch oder?!
https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten/2 -
@Habedere
Nix gegen stabilostick, aber ich mache es immer nach 'meiner' Methode.
Einfach in der (bei dir offenbar bereits vorhandenen) Datei /etc/apt/sources.list.d/nodesource.list
die gewünschte Version eintragen und persudo apt update sudo apt dist-upgrade
hochziehen.
-
@Thomas-Braun
Ah ok - dachte nur weil die Anleitung offiziell verlinkt wird.Jetzt spinnt leider mein Mbus Adapter
host.orangepizero 2020-10-06 19:18:19.269 info Rebuild for adapter system.adapter.mbus.0 not successful in 3 tries. Adapter will not be restarted again. Please execute "npm install --production" in adapter directory manually. host.orangepizero 2020-10-06 19:18:19.268 error instance system.adapter.mbus.0 terminated with code 1 (JS_CONTROLLER_STOPPED) host.orangepizero 2020-10-06 19:18:19.267 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:985:32) host.orangepizero 2020-10-06 19:18:19.267 error Caught by controller[0]: at Object.Module._extensions..js (internal/modules/cjs/loader.js:1157:10) host.orangepizero 2020-10-06 19:18:19.266 error Caught by controller[0]: at Module._compile (internal/modules/cjs/loader.js:1137:30) host.orangepizero 2020-10-06 19:18:19.266 error Caught by controller[0]: at Object.<anonymous> (/opt/iobroker/node_modules/node-mbus/index.js:7:38) host.orangepizero 2020-10-06 19:18:19.265 error Caught by controller[0]: at bindings (/opt/iobroker/node_modules/node-mbus/node_modules/bindings/bindings.js:112:48) host.orangepizero 2020-10-06 19:18:19.264 error Caught by controller[0]: at require (internal/modules/cjs/helpers.js:72:18) host.orangepizero 2020-10-06 19:18:19.264 error Caught by controller[0]: at Module.require (internal/modules/cjs/loader.js:1025:19) host.orangepizero 2020-10-06 19:18:19.263 error Caught by controller[0]: at Function.Module._load (internal/modules/cjs/loader.js:878:14) host.orangepizero 2020-10-06 19:18:19.263 error Caught by controller[0]: at Module.load (internal/modules/cjs/loader.js:985:32) host.orangepizero 2020-10-06 19:18:19.262 error Caught by controller[0]: at Object.Module._extensions..node (internal/modules/cjs/loader.js:1187:18) host.orangepizero 2020-10-06 19:18:19.261 error Caught by controller[0]: the module (for instance, using `npm rebuild` or `npm install`). host.orangepizero 2020-10-06 19:18:19.261 error Caught by controller[0]: NODE_MODULE_VERSION 72. Please try re-compiling or re-installing host.orangepizero 2020-10-06 19:18:19.260 error Caught by controller[0]: NODE_MODULE_VERSION 57. This version of Node.js requires host.orangepizero 2020-10-06 19:18:19.259 error Caught by controller[0]: was compiled against a different Node.js version using host.orangepizero 2020-10-06 19:18:19.258 error Caught by controller[0]: Error: The module '/opt/iobroker/node_modules/node-mbus/build/Release/mbus.node' host.orangepizero 2020-10-06 19:18:19.257 error Caught by controller[0]: ^ host.orangepizero 2020-10-06 19:18:19.255 error Caught by controller[0]: throw e; host.orangepizero 2020-10-06 19:18:19.252 error Caught by controller[0]: /opt/iobroker/node_modules/node-mbus/node_modules/bindings/bindings.js:121 host.orangepizero 2020-10-06 19:18:17.692 info instance system.adapter.mbus.0 started with pid 1919
-
@Habedere sagte in [HowTo] Nodejs-Installation und Upgrades unter Debian:
Caught by controller[0]: the module (for instance, using
npm rebuild
ornpm install
).cd /opt/iobroker npm rebuild
-
iobroker rebuild mbus
-
@Thomas-Braun
...ja ... eigentlich wird es auch selbst behoben ..
. wollte aber sicher gehen und alles nochmal per "npm rebuild" durchführen lassen . -
@Glasfaser sagte in [HowTo] Nodejs-Installation und Upgrades unter Debian:
@Habedere sagte in [HowTo] Nodejs-Installation und Upgrades unter Debian:
Caught by controller[0]: the module (for instance, using
npm rebuild
ornpm install
).cd /opt/iobroker npm rebuild
/home/iobroker/.cache/node-gyp/12.18.4/include/node/v8config.h:328:3: note: in d efinition of macro ‘V8_DEPRECATED’ declarator __attribute__((deprecated(message))) ^~~~~~~~~~ ../src/serialport.cpp:383:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call (int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(2, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1674:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: In function ‘void EIO_AfterDrain(uv_work_t*)’: ../src/serialport.cpp:424:30: warning: ‘v8::Local<v8::Value> Nan::Callback::Call (int, v8::Local<v8::Value>*) const’ is deprecated [-Wdeprecated-declarations] data->callback.Call(1, argv); ^ In file included from ../src/./serialport.h:6:0, from ../src/serialport.cpp:1: ../../nan/nan.h:1674:3: note: declared here Call(int argc, v8::Local<v8::Value> argv[]) const { ^~~~ ../src/serialport.cpp: At global scope: ../src/serialport.cpp:460:17: error: variable or field ‘init’ declared void void init(v8::Handle<v8::Object> target) { ^~~~~~ ../src/serialport.cpp:460:13: error: ‘Handle’ is not a member of ‘v8’ void init(v8::Handle<v8::Object> target) { ^~ ../src/serialport.cpp:460:34: error: expected primary-expression before ‘>’ toke n void init(v8::Handle<v8::Object> target) { ^ ../src/serialport.cpp:460:36: error: ‘target’ was not declared in this scope void init(v8::Handle<v8::Object> target) { ^~~~~~ In file included from ../../nan/nan.h:53:0, from ../src/./serialport.h:6, from ../src/serialport.cpp:1: ../src/serialport.cpp:485:25: error: ‘init’ was not declared in this scope NODE_MODULE(serialport, init); ^ /home/iobroker/.cache/node-gyp/12.18.4/include/node/node.h:608:36: note: in defi nition of macro ‘NODE_MODULE_X’ (node::addon_register_func) (regfunc), \ ^~~~~~~ ../src/serialport.cpp:485:1: note: in expansion of macro ‘NODE_MODULE’ NODE_MODULE(serialport, init); ^~~~~~~~~~~ serialport.target.mk:112: recipe for target 'Release/obj.target/serialport/src/s erialport.o' failed make: *** [Release/obj.target/serialport/src/serialport.o] Error 1 make: Leaving directory '/opt/iobroker/node_modules/iobroker.discovery/node_modu les/serialport/build' gyp ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2 gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_module s/node-gyp/lib/build.js:194:23) gyp ERR! stack at ChildProcess.emit (events.js:315:20) gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_proces s.js:275:12) gyp ERR! System Linux 4.19.13-sunxi gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gy p/bin/node-gyp.js" "rebuild" gyp ERR! cwd /opt/iobroker/node_modules/iobroker.discovery/node_modules/serialpo rt gyp ERR! node -v v12.18.4 gyp ERR! node-gyp -v v5.1.0 gyp ERR! not ok npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the serialport@6.2.2 install script. npm ERR! This is probably not a problem with npm. There is likely additional log ging output above. npm ERR! A complete log of this run can be found in: npm ERR! /home/iobroker/.npm/_logs/2020-10-06T19_31_30_970Z-debug.log