[LINUX] Jetson Nano wird installiert (Yocto ver.)

Es gibt keinen Artikel darüber, wie man Yocto in Jetson Nano einführt, also habe ich ihn geschrieben.

Bis zum Bitbake

Quelle herunterladen

Laden Sie diese beiden und bsp von nvidia developper herunter. Ohne dies entschuldigt sich bitbake für den Fehler.

Umgebungseinstellung

bblayer.conf

BBLAYERS ?= " \
  /home/ubuntu/xxx/yocto/poky/meta \
  /home/ubuntu/xxx/yocto/poky/meta-poky \
  /home/ubuntu/xxx/yocto/poky/meta-yocto-bsp \
  /home/ubuntu/xxx/yocto/poky/meta-linaro/meta-linaro-toolchain \
  /home/ubuntu/xxx/yocto/poky/meta-tegra \
  "

Hier werden zusätzlich zu dem von poky angegebenen Tegra und Linaro hinzugefügt. Ich habe Linaro basierend auf diesem Artikel hinzugefügt und mit gcc7.x erstellt Machen. https://github.com/madisongh/meta-tegra/wiki/Using-linaro-gcc7-for-CUDA-support

local.conf

Fügen Sie abschließend Folgendes hinzu

MACHINE = "jetson-nano"
LICENSE_FLAGS_WHITELIST = "commercial"
GCCVERSION = "linaro-7.%"
CUDA_VERSION = "10.0"
NVIDIA_DEVNET_MIRROR = "file:///home/ubuntu/xxx/nvidia/downloads"

CORE_IMAGE_EXTRA_INSTALL += " openssh "
PACKAGE_EXCLUDE += " packagegroup-core-ssh-dropbear " <-- core-image-Erforderlich, um Konflikte zwischen Dropbear und OpenSh in Sato zu vermeiden

TEGRAFLASH_SDCARD_SIZE = "2G" 
IMAGE_OVERHEAD_FACTOR = "1.0"
IMAGE_CLASSES += " image_types_tegra "
IMAGE_FSTYPES = "tegraflash"

Geben Sie für NVIDIA_DEVNET_MIRROR den Ordner an, der den Satz (voller Debs) enthält, der mit sdkmanager von nvidia heruntergeladen wurde. Ich habe meine Umgebung auf nvidia / downloads eingestellt und dies angegeben.

** Erklärung **

** TEGRAFLASH_SDCARD_SIZE **: Der Standardwert ist 16G. Geben Sie eine große Zahl ein, wenn Sie sie erhöhen möchten, und eine kleine Zahl, wenn Sie sie verringern möchten. Wenn die Größe groß wird, gibt es schädliche Auswirkungen, z. B. Zeit in Anspruch zu nehmen. ** IMAGE_ROOTFS_SIZE **: Das Lehrbuch sagt, dass es die Dateigröße steuert, aber es scheint, dass TEGRAFLASH_SDCARD_SIZE Priorität hat. Geben Sie daher nicht an. ** IMAGE_OVERHEAD_FACTOR **: Geben Sie freien Speicherplatz an. ** MASCHINE **: Legen Sie den Maschinennamen in (Maschinenname) .conf unter meta-tegra / conf / machine fest. Wenn es sich vom hier angegebenen Dateinamen unterscheidet, wird es von der Sanity Check mit einem Fehler abgelehnt.

bitbake.conf

Wenn es eine fmacro-Präfix-Map gibt, wird der Build nicht bestanden. Löschen Sie ihn daher.

poky/meta/conf/bitbake.conf


# GCC 7 doesn't support fmacro-prefix-map, results in "error: cannot compute suffix of object files: cannot compile"
# Change the value from bitbake.conf DEBUG_PREFIX_MAP to remove -fmacro-prefix-map
DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR} \
                    -fdebug-prefix-map=${STAGING_DIR_HOST}= \
                    -fdebug-prefix-map=${STAGING_DIR_NATIVE}= \

während des Bitbackens

$ source poky/oe-init-build-env nano-build
$ bitbake core-image-minimal

Nach dem Lehrbuch. Quelle, Bitbake.

Vorgang wiederholen

$ bitbake -c cleanall core-image-minimal
$ rm -Rf tmp/*
$ bitbake core-image-minimal

Lass es uns versuchen !!

Bereitstellung auf SD-Karte

Es ist die übliche Magie. Es ist eine Bilddatei mit der Erweiterung ".sdcard", obwohl es viele gzip-Formate gibt. DD ohne Arbeit.

$ sudo dd if=core-image-minimal-jetson-nano.sdcard of=/dev/sdx bs=4M conv=fsync status=progress

Standardmäßig hat es 17 GB, daher benötigen Sie eine 32G Micro-SD-Karte. Die obigen Einstellungen sind auf 2G eingestellt, daher ist eine SD-Karte mit einer geeigneten Größe in Ordnung.

Anlaufen

Befestigen Sie die SD-Karte am Jetson Nano und starten Sie sie. ID: root, PW: Keine

root@jetson-nano:~# cat /proc/version
Linux version 4.9.140-l4t-r32.2.1+g7467bde43b5d (oe-user@oe-host) (gcc version 7.2.1 20171011 (Linaro GCC 7.2-2017.11) ) #1 SMP PREEMPT xxx Oct xx xx:xx:xx UTC 2019
root@jetson-nano:~# df
Filesystem     1K-blocks   Used Available Use% Mounted on
none             1782740      0   1782740   0% /dev
/dev/mmcblk0p1   1887056 166920   1601352  10% /
tmpfs            2025568    216   2025352   1% /run
tmpfs            2025568    156   2025412   1% /var/volatile

Starten Sie Teil2

Ich habe auch Core-Image-Sato gemacht, also habe ich damit angefangen. Außerdem wird TEGRAFLASH_SDCARD_SIZE? = "2G" nicht gestartet. Selbst mit 4G lag die Nutzungsrate bei 92%.

Startbildschirm image.png

Menübildschirm image.png

Das Ende

Recommended Posts

Jetson Nano wird installiert (Yocto ver.)
Jetson Nano Setup