1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Rickyアドカレ2024Advent Calendar 2024

Day 14

Yoctoのインストール方法

Last updated at Posted at 2024-12-23

注意

理解が浅いためドキュメントを引用しつつ読み込みを行いましたが誤っている箇所があるかもしれません。
その点をご理解の上で読んでいただけると幸いです。

はじめに

あるRenesasのAIボードにおいてYoctoを使ったインストールの箇所がありました。
その際にやや詰まったり背景が理解しきれずコマンドをただ叩く行為になっていました。
そこで情報を整理し、インストールまで何が行われているのかを記述していきます。
この情報が今からYoctoを使ったインストールをされる方のお役に立てば幸いです。

環境

ubuntu20.04
wsl2環境
windows11
Renesas RZ/V2L

Yoctoとは何か?

The Yocto Project (YP) is an open source collaboration project that helps developers create custom Linux-based systems regardless of the hardware architecture.
The project provides a flexible set of tools and a space where embedded developers worldwide can share technologies, software stacks, configurations, and best practices that can be used to create tailored Linux images for embedded and IOT devices, or anywhere a customized Linux OS is needed.

Yocto Projectとは
組込みシステムには、小フットプリント、制約のある環境下での高いパフォーマンス、信頼性、長期間のサポート、制限されたリソースへの対応が求められます。Yocto Projectは、これらのエッジ特有の課題を検討し、組込みLinuxプラットフォームの標準化を目指して生まれたLinux Foundation傘下のオープンソースプロジェクトです。柔軟なツールセットと開発環境を提供しており、世界中の組込み機器開発者がカスタムメイドのLinuxイメージを作成する際に使用する技術、ソフトウェアスタック、構成、ベストプラクティスを共有し、高い相互運用性を達成しています。ハードウェアベンダーやソフトウェアベンダーのエコシステムも統合されていることから、インテリジェントエッジなどの最新テクノロジーに対するサポートや専門知識も入手可能です。Yocto Projectは誰もが無償で利用可能な、標準の組込みLinuxビルドシステムを提供します。

かなり乱暴なまとめ方に感じますが1言で表現してみると
Linuxをカスタマイズし組込みシステムに最適化させたビルドシステムのことなのだと解釈しています。

作業手順

sudo apt install build-essential chrpath cpio debianutils diffstat file gawk gcc git iputils-ping libacl1 liblz4-tool locales python3 python3-git python3-jinja2 python3-pexpect python3-pip python3-subunit socat texinfo unzip wget xz-utils zstd
git clone git://git.yoctoproject.org/poky

まずはcloneでyoctoプロジェクトを入手します

cd poky
git branch -a

-aオプションを付けることですべてのブランチを確認できます

git checkout -t origin/styhead -b my-styhead

ここではstyheadを採用しています

git pull

pullで必要な情報を取得します

cd poky
source oe-init-build-env

ファイルの実行を行います
今回はoe-init-build-envファイルの実行が行われます

bitbake core-image-minimal

bitbakeコマンドでlinuxイメージの構築を行います
今回はcore-image-minimalの構築を行います

runqemu qemux86-64

構築したイメージのエミュレーターの起動コマンドになります
問題がなければ画面が立ち上がりlinuxイメージが動いているのを確認できます

補足

sudo apt install zstd

この操作は状況によりけりですがインストールする必要があります
zstdを利用することでpull後の操作が問題なく進むというケースがありました
ロジックは不明ですが場合によっては利用されてください

最後に

誠実な批判や指摘は歓迎します。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?