ZyboをTutorialで試す その5 U-Bootのビルド

前々回の続きです。引き続きTutorialFPGAの部屋を参考にします。

LinuxへのSDKのインストールが完了したら、環境変数の設定をしておきます。SDKを使う都度、設定してもよいのですが、 面倒なので ~/.bashrc の末尾に追記しておきます。

$ vi ~/.bashrc
...
source /opt/Xilinx/SDK/2015.4/settings64.sh

2016/02/08追記: この設定を行うと、LD_LIBRARY_PATHも変更されます。その影響で、apt-get等の一部のコマンド実行時にリンカのエラーが表示されるようになります。ご注意下さい。

続いて、ビルドに必要なコマンド, パッケージ類をインストールしましょう。ビルドに必要なmakeの他に、64bit環境で32bitアプリを動かすためのライブラリも必要です (SDK同梱のバイナリは64bit版ではなく32bit版のようです)。これをしないと、クロスコンパイラはインストールされてあるのに "no such file or directory" のようなエラーが吐き出されます。

$ sudo apt-get update
$ sudo apt-get install make
...
$ sudo dpkg --add-architecture i386
$ sudo apt-get update
$ sudo apt-get install libc6:i386

では、U-Bootのコンパイルを行います。チュートリアルのセクション名にもあるように、master-nextブランチからgit cloneしてくるのがポイントです。

$ git clone -b master-next https://github.com/DigilentInc/u-boot-Digilent-Dev.git
...
$ cd u-boot-Digilent-Dev
$ make CROSS_COMPILE=arm-xilinx-linux-gnueabi- zynq_zybo_config
...
$ make CROSS_COMPILE=arm-xilinx-linux-gnueabi-
...

特にエラー等が表示されずにmakeが終了されたらu-bootのコンパイルに成功しています。makeを実行したディレクトリ内にu-bootが生成されていると思います。これをZybo Base Systemの中のsd_imageディレクトリに u-boot.elf というファイル名でコピーしておきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です