🚀
qemu-7.0.0 のビルド
jetson nanoのubuntu 18.04でやりました。
qemu-x86_64-static をソースコードからビルドしました。
ninja のインストール
qemuでは従来のmakeの代わりにninjaを使うように変更されています。
まずninjaをインストールします。
$ sudo apt install ninja-build
ソースの入手と展開
$ tar xf qemu-7.0.0.tar.xz
$ cd qemu-7.0.0/
必要なライブラリのインストール
このページを参考に /etc/apt/sources.list を編集します。
$ sudo vi /etc/apt/sources.list
$ sudo apt update
$ sudo apt build-dep qemu-user-static
ビルド
$ ./configure --target-list=x86_64-linux-user --static
$ make
--target-list=
を指定しないと全種類がビルドされます。今回は必要なものだけ。
static linkされたものが欲しいので --static
をつけました。
$ cd ./build
$ file qemu-x86_64
qemu-x86_64: ELF 64-bit LSB executable, ARM aarch64, version 1 (GNU/Linux), statically linked, for GNU/Linux 3.7.0, BuildID[sha1]=b75811bed9e3836ddc549380cc5df5af3376a5e3, with debug_info, not stripped
$ ./qemu-x86_64 --version
qemu-x86_64 version 7.0.0
Copyright (c) 2003-2022 Fabrice Bellard and the QEMU Project developers
stripしました。
$ cp qemu-x86_64{,.org}
$ strip qemu-x86_64
$ ls -lh qemu-x86_64{,.org}
-rwxrwxr-x 1 koba koba 6.3M 4月 28 21:23 qemu-x86_64
-rwxrwxr-x 1 koba koba 22M 4月 28 21:23 qemu-x86_64.org
/usr/bin/qemu-x86_64-static をさしかえ
$ sudo mv /usr/bin/qemu-x86_64{,.org}
$ sudo cp qemu-x86_64 /usr/bin/qemu-x86_64-static
追記
7.0.0はメジャーバージョンアップの一発目なので、さすがにまだ安定しない部分があるようです。
不定期にsegmentation fault が発生しました。
なので、ひとつ前の 6.2.0 も試しています。ビルドの手順は全く同じです。
Discussion