Create an Ubuntu VM environment to build Yocto BSP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Create an Ubuntu VM environment to build Yocto BSP

Create an Ubuntu VM environment to build Yocto BSP

Tool: VMware Workstation Player

Linux Distribution : Ubuntu 16.04

1. Create the VM in VMware Workstation.

1.png

2. Select the .iso file to install the Ubuntu 16.04 in the VM.

2.png

3. In "Specify Disk Capacity", I recommend the disk size is 200GB.

5.png

4. Then click "Finish" to create the VM.

6.png

5. If you have local mirror sources, change the source in /etc/apt/source.list. This will speed up a lot when you download the Linux packages and software.

7.png

6. Type these two commands to update the Ubuntu system.

- sudo apt-get update

- sudo apt-get upgrade

7. Install Yocto Project host packages
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat libsdl1.2-dev
$ 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 asciidoc u-boot-tools

8.Install the repo

a. Create a bin folder in the home directory.
$ mkdir ~/bin (this step may not be needed if the bin folder already exists)
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

b. Add the following line to the .bashrc file to ensure that the ~/bin folder is in your PATH variable.
export PATH=~/bin:$PATH

If you cannot download the repo from google, please try this one:

Git Repo | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 

9. Yocto project setup

$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml
$ repo sync

10. Building an image

The syntax for the fsl-setup-release.sh script is shown below.
$ DISTRO=<distro name> MACHINE=<machine name> source fsl-setup-release.sh -b <build dir>

$ DISTRO=fsl-imx-xwayland MACHINE=imx8qxpmek source fsl-setup-release.sh -b build-xwayland
$ bitbake fsl-image-qt5-validation-imx

or

$ bitbake core-image-full-cmdline (smaller size of rootfs)

(for more examples, please refer to the i.MX_Yocto_Project_User's_Guide.pdf)

11. U-boot and Kernel Source code in Yocto

u-boot : imx-yocto-bsp/build-xwayland/tmp/work/<board_name>/u-boot-imx

kernel : imx-yocto-bsp/build-xwayland/tmp/work/<board_name>/linux-imx

12. Deploy folder of the images

imx-yocto-bsp/build-xwayland/tmp/deploy/images/<board_name>

Some useful commands for your information:

1. Kernel Menuconfig

$ bitbake linux-imx -c menuconfig

2. Rebuild the u-boot and kernel source code

$ bitbake u-boot-imx -c compile -f

$ bitbake linux-imx -c compile -f

3. Rebuild the whole project to generate the images to deploy folder again

for example, if you build the fsl-image-qt5-validation-imx before , then type this:

$ bitbake fsl-image-qt5-validation-imx -f

Reference:

(1) Download the BSP and the Documentation   :  i.MX Software | NXP 

Comments

If I did the same as above,
When I ran the bitbake fsl-image-qt5-validation-imx command,
Only when BB_NUMBER_THREADS = "1" in conf / local.conf,
The build could be completed.

I've tried OS ubuntu 16.04, ubuntu 14.04, ubuntu 18.04
Etc. are all the same result.

If BB_NUMBER_THREADS is greater than 1,
You will be logged out automatically.

I used up to 32GB of memory and used up to 16 cores.

The build will complete successfully only if BB_NUMBER_THREADS is 1.

The build takes about 9 hours.

It takes too long to use this.

Is there any way to solve this?

Is the number of vCPU setting too high? have you try to lower the value?

Thank you for your reply.

 

I tried using 2, 3, 4, 8, 16 cores.
After building everything, ubuntu linux will automatically log out.

100% helpful (1/1)
Version history
Last update:
‎06-20-2019 02:41 AM
Updated by: