FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

SiFive Freedom-u-SDKのアップデート試行 (1. bitbakeでのビルド試行)

freedom-u-sdkにはSiFiveのUnleashedなどのLinux環境が入っているのだが、いつの間にかアップデートされていた。

どうやらGoogleリポジトリ管理ツールrepoを使ってビルドような仕組みに変わっている。

以下のGitHubリポジトリを参考にしている。

github.com

Linuxのビルドにはbitbakeを使用するので、Ubuntuの場合には以下のようにパッケージをインストールする必要がある。

$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev xterm

repoを使えるように設定する。

$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

次にmeta-sifiveをダウンロードしてビルド環境を整える。諸々Gitリポジトリをダウンロードして作業環境を構築するためのものだ。

$ mkdir riscv-sifive && cd riscv-sifive
$ repo init -u git://github.com/sifive/meta-sifive -b 2020.03 -m tools/manifests/sifive.xml
$ repo sync

以下のリポジトリがダウンロードされたようだ。

$ ls -1
meta-openembedded
meta-riscv
meta-sifive
openembedded-core

次にセットアップを行う。以下のように入力するだけ。

. ./meta-sifive/setup.sh

ビルドには以下のコマンドを実行する。bitbakeを実行するようだ。

$ PARALLEL_MAKE="-j 4" BB_NUMBER_THREADS=4 MACHINE=freedom-u540 bitbake demo-coreip-cli
ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
    Following is the list of potential problems / advisories:

    OpenEmbedded doesn't work under WSL at this time, sorry

しまった。WSLはサポートされていないのか。どうしようか...