To build os image for a given SBC using yocto project is a tedious task, especially if you have to do everything from scratch.
I’ve used OrangePi Zero for quite some time now. I wanted to build an image for that, I tried doing if from scratch by myself. It was a bit difficult to do as I could not invest enough time into it. So I started looking for repositories on github. I came across Halolo/orange-pi-distro which actually made it simpler.
Following is the process to build and flash that image on OrangePi zero.
To build the image for OrangePi Zero using yocto project,
Install the dependencies for yocto
builds
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat cpio python3 python3-pip python3-pexpect \
xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa \
libsdl1.2-dev pylint3 xterm
get the source code from Halolo/orange-pi-distro repo.
$ git clone https://github.com/Halolo/orange-pi-distro
clone external submodules
$ git submodule update --init
source the file source-me
$ . source-me orange-pi-zero
run the bitbake
$ bitbake opiz-minimal
This command will build an image for orange pi zero. It might take a long time to build depending upon the system configuration.
To flash the sdcard, with this newly built image run flash-sdcard.sh
script.
$ sudo ./flash-sdcard.sh -d /dev/<your device>
Reference/source: Halolo/orange-pi-distro README.md.