QEMUとDockerを使ってクロスビルド環境を作る

Published on 2020-08-22 00:00:00

ARM環境のRaspbianイメージをx86上のDockerで動かす

リンク先でやっていることを解説すると、

  • aptでbinfmt-supportとqemu-user-staticをインストールし、異なるアーキテクチャ向けの実行ファイルを見つけたら、qemu(ex. qemu-arm-static)に実行させるようにする

  • ラズパイイメージにqemu-arm-staticを追加したDockerイメージを作る

をやってからDockerコンテナを走らせるとqemu-arm-staticがラズパイの実行ファイルを実行してくれる。すばらしい。

警告

qemu-user-staticより先にbinfmt-supportをインストールしないとbinfmtの対応ファイルにqemuが追加されない。対応したかどうかは update-binfmts --display で確認できる。