2016-10-19 5 views
1

Ich schreibe eine Anwendung, die auf einem Beaglebone Black unter Angstrom Linux ausgeführt werden muss. Das mitgelieferte Linux auf diesem Board kommt bereits mit Node, aber es ist eine sehr frühe Version (0.12.7). Also habe ich versucht, eine neuere Version zu verwenden. Ich ging auf die node.js Website und lud this archive (Knotenversion 4.6.1 Linux-Binärdateien für ARMv7). Als ich das Paket auf dem BeagleBone extrahieren und versuchen Knoten zu laufen, bekomme ich einen seltsamen Fehler:Wie kann man eine neuere Version von node.js auf Beaglebone Black ARMv7 booten?

[email protected]:/sdcard/node-v4.6.1-linux-armv7l/bin# ./node -v 
-sh: ./node: No such file or directory 

sdcard eine ext4-Partition auf der SD-Karte, die ich verwenden (die Karte in Ordnung ist, kann ich auch eine andere laufen Knotenprojekt von derselben Partition mit der alten Knotenversion).

Warum tritt dieser Fehler auf und was bedeutet das? Der ausführbare Knoten im Verzeichnis oben scheint erwähnt in Ordnung zu sein:

[email protected]:/sdcard/node-v4.6.1-linux-armv7l/bin# file node 
node: ELF 32-bit LSB executable, ARM, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=0x2b816f446e6e77cabfa4c3303376c05a5f90ff2a, not stripped 

Das für dieses Board in Ordnung sein sollte, denke ich:

[email protected]:/sdcard/node-v4.6.1-linux-armv7l/bin# cat /proc/cpuinfo 
processor  : 0 
model name  : ARMv7 Processor rev 2 (v7l) 
BogoMIPS  : 990.68 
Features  : swp half thumb fastmult vfp edsp thumbee neon vfpv3 tls 
CPU implementer : 0x41 
CPU architecture: 7 
CPU variant  : 0x3 
CPU part  : 0xc08 
CPU revision : 2 

Hardware  : Generic AM33XX (Flattened Device Tree) 
Revision  : 0000 
Serial   : 0000000000000000 

Was mache ich falsch || Was vermisse ich?

+1

Was zeigt 'ldd node'? – robertklep

+0

Es gibt keine LDD auf der BBB. – Robert

+1

Es wird entweder eine fehlende Bibliothek oder [der dynamische Lader selbst] (http://stackoverflow.com/q/36085323/3156750) sein. – Notlikethat

Antwort

0

Sie können die Node.js-Version eines BeagleBone aktualisieren, indem Sie Debian 8.7 installieren.

Alle BeagleBone Debian-Bilder (nach 2016-11-06) haben Node.js v4.x als Standard. Ich habe ein Upgrade von Debian 8.6 (Node.js v0.12.17) auf Debian 8.7 (Node.js v4.7.2) durchgeführt.

Hier ist, wie Sie es tun können:

  1. Herunterladen eines 4GB SD LXQT Bild vom weekly snapshots. Hinweis: Die Bildnamen enthalten BBB für BeagleBone Schwarz oder BBBW für BeagleBone schwarze drahtlose (Beispiel BBBW-blank-debian-8.7-lxqt-4gb-armhf-2017-01-15-4gb.img.xz)
  2. Dekomprimieren das Bild (.img.xz-.img). Unter Windows können Sie dazu 7-Zip verwenden.
  3. Drehen Sie das Bild in eine eMMC Flasher Bild. Um dies zu tun, müssen Sie den Inhalt von /boot/uEnv.txt in der Datei .img überprüfen. Es ist wichtig, dass die Zeile über den "eMMC Flasher" nicht kommentiert wird. Es sollte wie folgt aussehen: cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3-bbbw.sh.
  4. Schreiben Sie das Bild auf eine microSD-Karte. Unter Windows können Sie Win32 Disk Imager verwenden.
  5. Schalen Sie BeagleBone (durch physikalische das USB/Stromkabel Trennen)
  6. Plugin die microSD-Karte
  7. Halten Sie den Boot-Schalter (in der Nähe des microSD-Kartenslot) und, während Sie diese Taste gedrückt, einfügen das USB/Netzkabel. Keep Halten Sie den Boot-Schalter, bis die Benutzer-LEDs zu blinken beginnen.
  8. Warten Sie, bis die Benutzer-LEDs nicht mehr blinken und alle 4 Benutzer-LEDs sind an. Dieser Vorgang kann je nach verwendetem Bild 5-25 Minuten dauern.
  9. Trennen Sie das USB/Netzkabel.
  10. Entfernen Sie die microSD-Karte. Andernfalls werden Sie das eMMC wieder blinken.
  11. Schalten Sie Ihren BeagleBone Black ein. Hier

ist ein Überblick über den BeagleBone (mit Tasten & LEDs):

BeagleBone buttons

Haben Sie keine Angst vor der Menge von Schritten. Es ist eigentlich einfach. Es gibt auch offizielle Führer über die latest firmware images und installing the latest software.

Verwandte Themen