Ungültiger Maschinenbefehl beim starten von npm unter AMD Geode Futro A250

Du kommst mit der Installation nicht voran oder willst noch was nachfragen? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Chris230
Beiträge: 7
Registriert: 17.10.2017 14:27:50

Ungültiger Maschinenbefehl beim starten von npm unter AMD Geode Futro A250

Beitrag von Chris230 » 30.06.2019 08:14:40

Hallo Zusammen,

Ich habe auf meinem Futro A250 mit 500 MHz AMD Geode, 256 MB RAM und 4GB CF Karte einen Fhem-Server laufen.
Als Betriebssysteme habe ich Debian netinstal i386 nur als Webserver installiert.
Funktioniert bisher tadellos.
Ich möchte jetzt die fhem-alexa Erweiterung installieren.
Voraussetzung für fhem-alexa ist Nodejs ab V8 mit npm.

Meine Versuche unter Debian 9.9:
Vom Debian Server ließ sich nur die Version 4.xx ohne npm installieren. Npm gar nicht.
Dank des Befehls:
curl -sL https://deb.nodesource.com/setup_8.x -o nodesource_setup.sh
und der vorherigen instalation von curl bin ich ein Schritt weiter gekommen.
Nodejs V8 und V9 konnte ich inklusive npm installieren jedoch erhielt ich beim starten immer den Fehler ungültiger Maschinenbefehl.
V7 ließ sich starten aber npm nicht.
Nodejs V10, V11 und V12 ließen sich nicht installieren. Da ab V10 angeblich nur auf 64er CPUs läuft.

Nach Recherchen habe ich herausgefunden das unter Debian 10 standardmäßig Nodejs V10 auch auf 32er Prozessoren läuft.
Habe dies auf meinem VMPLAYER getestet und lief einwandfrei. Npm war nicht dabei und ich musste es gesondert installieren.
Komisch fand ich das die npm Installation aus 300 Paketen besteht. Ließ sich am Ende jedoch auch starten.
Habe dann meinen Fhem-Server unter Debian 10 neu aufgesetzt.
Nodejs V10 ließ sich auf meiner AMD Geode einwandfrei starten. Npm leider nicht. Ungültiger Maschinenbefehl.
Frustrierend ist nur, daß ich npm nur ein einziges Mal zum installieren von fhem-alexa benötige und danach nie wieder.

Nach weiteren Recherchen habe ich herausgefunden, das npm nur CPUs mit sse2 unterstützt. Soweit ich weiß habe ich ein non-sse CPU.

Gibt es denn eine npm Version die auf non-sse CPUs läuft? Oder vl. eine andere Lösung?
Für jede Hilfe wäre ich sehr dankbar.

Benutzeravatar
MSfree
Beiträge: 10773
Registriert: 25.09.2007 19:59:30

Re: Ungültiger Maschinenbefehl beim starten von npm unter AMD Geode Futro A250

Beitrag von MSfree » 30.06.2019 11:02:42

Chris230 hat geschrieben: ↑ zum Beitrag ↑
30.06.2019 08:14:40
Ich habe auf meinem Futro A250 mit 500 MHz AMD Geode, 256 MB RAM und 4GB CF Karte einen Fhem-Server laufen....
Nach weiteren Recherchen habe ich herausgefunden, das npm nur CPUs mit sse2 unterstützt. Soweit ich weiß habe ich ein non-sse CPU.
Richtig, deine CPU ist im Prinzip ein Athlon XP von 2001, nur deutlich untertaktet, um den Stromverbrauch im Zaum zu halten.
Ich möchte jetzt die fhem-alexa Erweiterung installieren.
Naja, jedem das seine. :roll:
Komisch fand ich das die npm Installation aus 300 Paketen besteht.
Du solltest für solche Minimalinstallationen die "Recommends" und "Suggests" ausstellen, dann reduziert sich die Paketanzahl deutlich:

Trage folgende Zeilen in /etc/apt/apt.conf.d/70debconf ein:

Code: Alles auswählen

APT::Install-Recommends "0";
APT::Install-Suggests "0";
Nachträglich ist das allerdings wirkungslos, weil die ganzen nicht nötigen Pakete schon auf der Platte sind.
Habe dann meinen Fhem-Server unter Debian 10 neu aufgesetzt.
Nodejs V10 ließ sich auf meiner AMD Geode einwandfrei starten. Npm leider nicht. Ungültiger Maschinenbefehl.
Frustrierend ist nur, daß ich npm nur ein einziges Mal zum installieren von fhem-alexa benötige und danach nie wieder.
Du kannst doch die Installation von der VM auf die CF-Karte kopieren, nachdem du sie in der VM konfiguriert hast, also einmalig npm ausgeführt wurde.
Gibt es denn eine npm Version die auf non-sse CPUs läuft? Oder vl. eine andere Lösung?
Für jede Hilfe wäre ich sehr dankbar.
Wie gesagt, kopiere die Installation einfach von der VM auf die CF-Karte. Alternativ kannst du auch versuchen den Quellcode von npm selbst zu kompilieren, ohne SSE2-Support. Ich weiß aber nicht, ob es solche Optionen überhaupt gibt.

Ich würde also nochmal eine Minimalinstallation in einer VM erstellen, Dann die o.g. Recommends und Suggests ausstellen. Dann die nötige Software installieren. Und wenn alles läuft, die Installation auf die CF klonen.

Chris230
Beiträge: 7
Registriert: 17.10.2017 14:27:50

Re: Ungültiger Maschinenbefehl beim starten von npm unter AMD Geode Futro A250

Beitrag von Chris230 » 30.06.2019 12:40:00

Hi

ich habe fhem-alexa auf dem VM installiert bekommen.
Diese habe ich dann auf die CF kopiert. Rechte musste ich neu vergeben.
Allerdings lässt sich dies nicht starten.
Ich bekomme die Meldung, das fhem-alexa nicht richtig installiert wurde.

Könnte natürlich sein das ich es nicht richtig übertragen habe.
Hast Du eventuell eine kleine Anleitung wie man sowas richtig macht? Bzw welche Tools sich dafür eignen?

Benutzeravatar
hikaru
Moderator
Beiträge: 13585
Registriert: 09.04.2008 12:48:59

Re: Ungültiger Maschinenbefehl beim starten von npm unter AMD Geode Futro A250

Beitrag von hikaru » 30.06.2019 17:57:36

In den A-Serie-Futros stecken offenbar Geode Lx 800. [1]
Denen fehlt mindestens eine i686-Instruktion [2][3]. Debian setzt seit Stretch i686 voraus. Falls dein System bisher trotzdem läuft, ist das pures Glück, dass du bisher offenbar die fehlenden Instruktionen nicht gebraucht hast. Deine neue Software will wohl eine der Instruktionen nutzen.

Für diese CPU ist das Ende der Fahnenstange erreicht. Bitte aussortieren!


[1] https://www.darc.de/fileadmin/filemount ... nblatt.pdf
[2] https://forums.gentoo.org/viewtopic-t-485271.html
[3] http://strohmayers.com/linux/HomeServer ... 20A220.pdf (S. 23)

Antworten