U-boot-xlnx

From ElphelWiki
Revision as of 14:09, 14 January 2016 by Oleg (talk | contribs) (Step 2: initenv)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Desctiption

A walkthrough for microzed, OS = Kubuntu 14.04, gcc 4.8.4

Steps

Step 0: toolchain

1. Build and install toolchain with poky, instructions here.

Step 1: get source

git clone https://github.com/Xilinx/u-boot-xlnx.git

latest commit:

commit 40e8c28b90725f1e23e22c3b3514cf0b531f1bee
Author: Michal Simek <michal.simek@xilinx.com>
Date:   Mon Jan 11 11:50:53 2016 +0100

Step 2: initenv

1. Create initenv in u-boot-xlnx:

initenv:

#!/bin/sh
export CROSS_COMPILE=arm-poky-linux-gnueabi-
export PATH=/opt/poky/2.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/:$PATH

2. run:

. ./initenv

Note: if forgotten the error would be something like this:

lib/asm-offsets.c:1:0: error: bad value (armv5) for -march= switch                                                                                                                 
 /*                                                                                                                                                                                
 ^                                                                                                                                                                                 
make[1]: *** [lib/asm-offsets.s] Error 1                                                                                                                                           
make: *** [prepare0] Error 2

Step 3: config

make zynq_microzed_defconfig

output:

  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  SHIPPED scripts/kconfig/zconf.tab.c
  SHIPPED scripts/kconfig/zconf.lex.c
  SHIPPED scripts/kconfig/zconf.hash.c
  HOSTCC  scripts/kconfig/zconf.tab.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#

Step 4: make

make

output:

arm-poky-linux-gnueabi-ld.bfd: cannot find -lgcc
make[2]: *** [examples/standalone/hello_world] Error 1
make[1]: *** [examples/standalone] Error 2
make: *** [examples] Error 2

... http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=678e8798ebe0f4fd1bd347db136f1499b8fe00c9