LoginSignup
4
1

More than 5 years have passed since last update.

Intel NUC に Automotive Grade Linux をインストール

Last updated at Posted at 2017-11-20

注: この手順は古いです。今は単に .wic ファイルを dd するだけで SD を作れます。

作業手順

公式文書 Running AGL on Intel MinnowBoard (and most Intel 64 bits HW)

Intel NUC に AGL をインストールするメモ。まずインストールするファイルを選ぶ。Intel Minnowboard Max 用が NUC にも使える。色んな所にリンクがあるが AGL Unified Code Base Release Notes がまとまっていた。hddimg ファイルをダウンロードする。

  • latest agl-demo-platform-crosssdk-intel-corei7-64.hddimg
    • 私が試したときはアプリが壊れていた。
  • dab 4.0.2 agl-demo-platform-intel-corei7-64.hddimg
    • まあ動いた。

このファイルを SD カードに焼くには mkefi-agl.sh というツールを使う。(なぜ普通に dd 出来ないかは要調査)

git clone git@github.com:dominig/mkefi-agl.sh.git
$ sudo cp -l mkefi-agl.sh/mkefi-agl.sh /usr/local/bin

あとは SD カードを指してツールを実行すれば作成。ツールはパーティションの作成やフォーマットを自動で行ってくれる。

$ lsblk
SD カードデバイスを確認
$ mkefi-agl.sh
$ sudo mkefi-agl.sh -v agl-demo-platform-crosssdk-intel-corei7-64.hddimg /dev/sdc

hddimg とは?

さて、hddimg というのが聞き慣れないので調べてみる。

この .hddimg というファイルに馴染みがないのでどういう物なのか調べてみる。mkefi-agl.sh を読むとどうもマウント出来そうだ。

$ sudo mount -o loop ~/Downloads/agl-demo-platform-crosssdk-intel-corei7-64.hddimg /mnt

マウントした物を観察すると、rootfs.img があるので、これが起動後の linux のルートパーティションになるようだ。

$ tree /mnt | less
/mnt
├── EFI
│   └── BOOT
│       └── bootx64.efi
├── initrd
├── ldlinux.c32
├── ldlinux.sys
├── libcom32.c32
├── libutil.c32
├── loader
│   ├── entries
│   │   ├── boot.conf
│   │   └── install.conf
│   └── loader.conf
├── rmc.db
├── rootfs.img
├── startup.nsh
├── syslinux.cfg
├── vesamenu.c32
└── vmlinuz

ということで、hddimg というのは linux のルートパーティションと EFI のブート情報を含んだ何かである事がわかる。

$ mkdir /tmp/mnt
$ sudo mount -o loop /mnt/rootfs.img /tmp/mnt
$ $ ls /tmp/mnt
bin  boot  dev  etc  home  lib  lost+found  media  mnt  proc  run  sbin  sys  tmp  usr  var

Bitbake が hddimg を作る仕組み。

Bitbake は IMAGE_FSTYPES の値を元に作成するイメージのフォーマットを決める。AGL の場合、次のように設定が見える。

$ ag IMAGE_FSTYPES meta-*

meta-agl/meta-agl-distro/conf/distro/poky-agl.conf
122:AGL_EXTRA_IMAGE_FSTYPES ??= ""
131:IMAGE_FSTYPES := "${AGL_DEFAULT_IMAGE_FSTYPES} ${AGL_EXTRA_IMAGE_FSTYPES}"

meta-agl/meta-agl-bsp/conf/include/agl_intel-corei7-64.inc
27:AGL_DEFAULT_IMAGE_FSTYPES := "wic hddimg"

自前でビルドする場合。

source meta-agl/scripts/aglsetup.sh -m intel-corei7-64 agl-demo agl-devel
bitbake agl-demo-platform

のように -m intel-corei7-64 を指定すれば勝手に hddimg ファイルが出来る。

4
1
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
4
1