🛌

Yoctoでlinux環境(qemu)構築から起動までメモ

2021/04/30に公開

環境準備

公式サイトのYocto Project Quick Buildの記載通りに進める。

$ sudo apt install gawk wget git diffstat unzip texinfo gcc build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm python3-subunit mesa-common-dev
$ git clone git://git.yoctoproject.org/poky
$ cd poky/
$ git checkout -t origin/hardknott -b my-hardknott
$ source oe-init-build-env build
$ bitbake core-image-sato
# しばらく時間がかかる
$ runqemu qemux86-64

qemuの起動後固まる

runqemu qemux86-64の実行で起動はしたが、以下の画面が出るだけで
何も操作できず。。。悲しい。

使っているPCのスペックが低いためでしょう。

qemuの起動(GUI無しで)

ということで、GUI無しで起動をしてみる。
ヘルプを見ると qemuparamsで引数を指定できるみたい。

$ runqemu --help

Usage: you can run this script with any valid combination
<省略>
  qemuparams=<xyz> - specify custom parameters to QEMU
  bootparams=<xyz> - specify custom kernel parameters during boot
  help, -h, --help: print this text
  -d, --debug: Enable debug output
  -q, --quiet: Hide most output except error messages

Examples:
<省略>
  runqemu qemux86 qemuparams="-m 256"
<省略>

ということで -nographic-serial mon:stdio をつけて実行。

$ runqemu qemux86-64 qemuparams="-nographic -serial mon:stdio"

しばらくすると起動しました(よかった)。

終了するときはCtrl + aを押したあとにxを押すと、以下のようになって
qemuが終了します。

root@qemux86-64:~# QEMU: Terminated
runqemu - INFO - Cleaning up
Set 'tap0' nonpersistent
$

まとめ

簡単に試したいときはYocto Project Quick Buildが参考になる。

qemuの起動後に固まったら、GUI無しで試してみる。

Discussion