Personal tools

Recipe for building Yocto Linux for PN8M-090T

From ICOP tech wiki

Jump to: navigation, search

Recipe for building Yocto Linux for PN8M-090T-2G(E)

Recipe for building Yocto Linux for PN8M-090T-2G RAM:

Check the compiling method on the open document form NXP:

Suggest O/S:Ubuntu 16.04

Please comment out content to the local.conf to avoid the error during building the SDL.

#PACKAGECONFIG_append_pn-qemu-native = " sdl" 
#PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"

Storage: Please make sure the capacity of your storage has 300GB or bigger space.

RAM: Please make sure the physical memory + swap has 16GB or bigger capacity.


Step 1. Install Host packages:

Essential Yocto Project host packages:

$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-essential chrpath socat libsdl1.2-dev

i.MX layers host packages for a Ubuntu 12.04 or 14.04 host setup are:

$ sudo apt-get install libsdl1.2-dev xterm sed cvs subversion coreutils texi2html \
docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils \
libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff curl lzop \

Step 2. Insalling the repo utility:

Create the bin folder in the home directory:

$ mkdir ~/bin (this step may not be needed if the bin folder already exists)
$ curl > ~/bin/repo 
$ chmod a+x ~/bin/repo

Step 3. Add the following line to the .bashrc file to make sure the ~/bin folder is in the PATH.

export PATH=~/bin:$PATH

Step 4. Ensure the git is properly set up by commands below:

$ git config --global "Your Name" 
$ git config --global "Your Email" 
$ git config --list

Step 5. Download the i.MX Yocto Project Community BSP recipe layers:

$ mkdir imx-yocto-bsp 
$ cd imx-yocto-bsp 
$ repo init -u -b \
imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml
$ repo sync

Step 6. Unzip the Recipe for building Yocto Linux for PN8M-090T-2G to the file ‘imx-yocto-bsp”

Step 7. Adding the meta-Java

$ cd imx-yocto-bsp/sources
$ git clone --no-checkout
$ cd meta-java
$ git checkout -b sumo origin/sumo

Step 8. Create the setup environment by command below (You could change the file name as you want)

$ DISTRO=fsl-imx-xwayland MACHINE=dm421a source -b \

Please input “y” when the EULA confirmation pop out.

Step 9. Edit conf/local.conf file and add the content below at the bottom:

MULTILIBS = "multilib:lib32"
DEFAULTTUNE_virtclass-multilib-lib32 = "armv7athf-neon"

CORE_IMAGE_EXTRA_INSTALL += "chromium-ozone-wayland"

IMAGE_INSTALL_append += " \
	openssh-sftp-server \
	ppp \
	rng-tools \
	glibc-gconv-utf-16 \
	expand-rootfs \
	touch-files \
	sqlite3 \
	make \
	openjdk-8 \
	lib32-glibc \
	lib32-libgcc \
	lib32-libstdc++ \

Step 10. Edit conf/bblayers.conf file and add the content below at the bottom:

BBLAYERS += " ${BSPDIR}/sources/meta-java "
BBLAYERS += " ${BSPDIR}/sources/meta-custom-dmp "

Step 11. Run the command below.

$ bitbake fsl-image-qt5-validation-imx

The system will start to download and install source code, patch file, and compilation.

How to install the image file by UUU.

After implemented bitbake fsl-image-qt5-validation-imx, it will generate an image file and be stored in the file under build-dmp/tmp/deploy/images/dm421a

In the build-dmp/tmp/deploy/images/dm421a file, we’ll need the file below for the image restoration.

1. fsl-mage-qt5-validation-imx-dm421a.sdcard.bz2
2. imx-boot-dm421a-sd.bin-flash_evk

Input command to get the image file - fsl-mage-qt5-validation-imx-dm421a.sdcard

(In this file, there are packaged kernel and rootfs):

$ bzip2 -d fsl-mage-qt5-validation-imx-dm421a.sdcard.bz2

Download the sample: If you have requirement to change the file name, please follow the steps below to change your file name (You could choose not changing the file name.)

SDP: boot -f imx-boot-dm421a-sd.bin-flash_evk
SDPU: write -f imx-boot-dm421a-sd.bin-flash_evk -offset 0x57c00
SDPS: boot -f imx-boot-dm421a-sd.bin-flash_evk
SDPV write -f imx-boot-dm421a-sd.bin-flash_evk -skipspl
FB: flash bootloader imx-boot-dm421a-sd.bin-flash_evk
You could change imx-boot-dm421a-sd.bin-flash_evk to your file name if needed.

FB: flash -raw2sparse all fsl-image-qt5-validation-imx-dm421a.sdcard
You could change fsl-image-qt5-validation-imx-dm421a.sdcard to your file name if needed.

After you have set your own file name, you could input the command below to install the Yocto Linux