cycloneVのARMカーネルを見つけた

先日まではyoctoをどの様にbuildするかまでを勉強していましたが

最終的な目標はARM、それもアルテラのFPGAの上で動くOSが必要なので

探していたら見つかりました

完全には出来なかったんですが

ひとまずビルドしてzImageが作製されるところまでは確認しました

 

0.OS

相変わらずubuntu17では上手く行かない事があります

今回はubuntu16で行いました

 

1.Poky

ともかくpokyをダウンロード(clone)します

バージョンは2.0に設定します
> git clone https://git.yoctoproject.org/git/poky
> cd poky
> git checkout -b yocto-2.0 tags/yocto-2.0

 

2. pokyのディレクトリ上でalteraのmetaデータをダウンロード(clone)します 

> git clone -b jethro git://github.com/kraj/meta-altera.git
> git clone -b jethro git://git.linaro.org/openembedded/meta-linaro.git

 

oe-init-build-envを読み込んで環境設定をします

ビルドディレクトリにbuild.MetaAlteraを指定しました

> source oe-init-build-env build.MetaAltera

 

3.build.MetaAltera/conf/bblayers.confを編集します

実際の内容はちょっと違うのですが青字のmeta-alteraを追加します

赤字のmeta-linaro-toolchainも追加する様に記述されていましたが

エラーが出たのでけしました

#----------------------------------------------------------------------------------------

# changes incompatibly
LCONF_VERSION = "6"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BBLAYERS ?= " \
./yocto/poky/meta \
./yocto/poky/meta-yocto \
./yocto/poky/meta-yocto-bsp \
./yocto//poky/meta-altera \
./poky/meta-linaro/meta-linaro-toolchain \
"
BBLAYERS_NON_REMOVABLE ?= " \
./yocto/poky/meta \
./yocto/poky/meta-yocto \

#----------------------------------------------------------------------------------------

 

4.conf/local.confにも以下の内容を追加します

 

MachinをCyclone5に設定

MACHINE = "cyclone5"

 

以下の行をコメントアウトします

#ASSUME_PROVIDED += "libsdl-native"

 

以下の行を追加します、参照にしたページにはいくつか設定がありましたがとりあえずこの設定で一定見ました
GCCVERSION = "linaro-5.2"
DEFAULTTUNE = "cortexa9hf-neon"

PREFERRED_PROVIDER_virtual/kernel = "linux-altera"
PREFERRED_VERSION_linux-altera = "4.2%"

#----------------------------------------------------------------------------------------

 

さて、bitbakeしますそれぞれ時間がかかります

> bitbake virtual/bootloader

> bitbake virtual/kernel

> bitbake core-image-base

 

これでエラーが出なければ、以下のファイルが出来ている筈です

poky/build.MetaAltera/tmp/deploy/images/cyclone5/zImage

 

これで動作するかどうか試してみる事にします