element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
    About the element14 Community
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      •  Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
RIoTboard
  • Products
  • Dev Tools
  • Single-Board Computers
  • RIoTboard
  • More
  • Cancel
RIoTboard
Blog Riotboard Yocto  : Part1 : Environment setup and initial build
  • Blog
  • Forum
  • Documents
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join RIoTboard to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: tusharp
  • Date Created: 22 Sep 2014 6:55 PM Date Created
  • Views 6952 views
  • Likes 1 like
  • Comments 36 comments
  • tusharp
  • Ubuntu
  • yocto
  • image
  • bitbake
  • freescale
  • imx6
  • riotboard
  • embedded
  • setup
  • riot
  • recipes
  • cortex-a9
  • bsp
  • mx-6s
  • arm
  • linux
Related
Recommended

Riotboard Yocto  : Part1 : Environment setup and initial build

tusharp
tusharp
22 Sep 2014

Contents:

Part1 : Environment setup and initial build  <-- You are here
Part2 : Build u-boot using Yocto
Part3 : Build Kernel using Yocto
Part4 : Package Development using Yocto
Part5 : Application Development using ADT

 

In this blog series we will walk you through the process of getting BSP source archives, cross-compiling , generating binaries for targets , developing system packages and creating sdcard for targets  using yocto tool.

 

 

A bit on yocto:

The Yocto Project is an open source project that provides templates, tools and methods to create custom Linux-based systems for embedded products.

The framework helps in cross-compilation by providing tools and packages for the build process and generation of images for target platform.

The yocto toolset has a number of recipes and it is maintained by the Yocto community and developed by Freescale for i.MX platforms.

 

 

In this blog we will build a sdcard image for  Riotboard using available sources on Yocto project.

I am using an Ubuntu 14.04 32bit host for this activity.

 

Updating host system with  required packages to support yocto build framework.

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

    sed wget cvs subversion git-core coreutils \

    unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk \

    python-pysqlite2 diffstat help2man make gcc build-essential \

    g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \

    mercurial autoconf automake groff libtool xterm curl lzop asciidoc

 

We need to have a tool to pull the packages, we are using repo here :

wget https://raw.github.com/android/tools_repo/stable/repo 

sudo mv repo /bin/repo 

sudo chmod 0755 /bin/repo

 

 

downloading yocto sources from official repository:

mkdir ~/fsl-arm-yocto-bsp

cd ~/fsl-arm-yocto-bsp

sudo repo init -u git://github.com/embest-tech/fsl-arm-yocto-bsp.git -b embest_imx-3.10.17-1.0.0_ga

repo sync

not using sudo in the above repo command will result in below error :

2uyixlf.jpg

 

 

Next we need to configure yocto to generate BSP images for Riotboard

~/fsl-arm-yocto-bsp$ MACHINE=riotboard source fsl-setup-release.sh -b build -e fb

 

A directory named build will be created inside  fsl-arm-yocto-bsp .

This contains the layers/directories used by bitbake to search for recipe while building package/image.

These recipe files can be configured (later in the blog series) according to our requirement.

 

The Riotboard config  is at : “sources/meta-fsl-arm-extra/conf/machine/riotboard.conf ”

 

 

the local.conf in build/conf can be configured to add more libraries to image (we will see that later)

local.conf

~/fsl-arm-yocto-bsp/build$ cat conf/local.conf | grep 'MACHINE\|THREAD\|IMAGE'

MACHINE ??= 'riotboard'

EXTRA_IMAGE_FEATURES = "debug-tweaks"

BB_NUMBER_THREADS = '4'

IMAGE_INSTALL_append = " mysql5 "

 

Lets build

~/fsl-arm-yocto-bsp/build$ bitbake fsl-image-fb

 

You will get a warning like below, which can be safely ignored

8z061e.jpg

 

The build will take couple of hours image ,

 

after build you will get below images in build/tmp/deploy/images/riotboard

 

Image Name

Description

u-boot.imx

bootloader

uImage

Kernel image

uImage-imx6solo_RIoTboard.dtb

Device Tree blob

fsl-image-fb-riotboard.tar.bz2

RootFileSystem

fsl-image-fb-riotboard.sdcard

Sdcard Image

 

Now the above image is ready to be flashed.

 

To flash sdcard image :

cd tmp/deploy/images/riotboard

sudo dd if=fsl-image-fb-riotboard.sdcard of=/dev/mmcblk0 bs=1M

 

make sure the boot switch is set to boot from sdcard

image

 

 

For more instructions on sdcard setup, check here.

flashing sdcard image from windows, check here.

  • Sign in to reply
  • e14 Contributor
    e14 Contributor over 11 years ago in reply to clem57

    Sorry,

    Which command?

    Do I need to edit the .sh file?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • clem57
    clem57 over 11 years ago in reply to e14 Contributor

    Enter command with a SUDO to get permissions needed. Must have password for ROOT!image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • e14 Contributor
    e14 Contributor over 11 years ago

    Help!

    I am still having trouble getting through this...

    I started over, and after reading the README, I ran

     

    $MACHINE=riotboard source setup-environment build

     

    which created my build directory.

     

    Then, back in the fsl-arm-yocto-bsp directory

     

    $MACHINE=riotboard  source fsl-setup-release-.sh -b build -e fb

     

    I get the following errors:image

     

     

    Permission denied.  Does this have anything to do with the above help:

    git config --global user.email "your_name@example.com"

    git config --global user.name "your_name"


    I had to answer these when doing the 'git' steps.  How would what I've entered here effect the build>?


    Please help, I need to complete this soon!

    Sandra

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • e14 Contributor
    e14 Contributor over 11 years ago

    Hi,

    I encountered with new problem.it seems bitbake try to unpack fsl-gpu-sdk-1.1.bin when it is already a binary file.Please help me.Here is summery of report.

    "

    ERROR: Error executing a python function in /home/meysam/fsl-arm-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-fsl-demos/recipes-graphics/fsl-gpu-sdk/fsl-gpu-sdk_1.1.bb:

     

    The stack trace of python calls that resulted in this exception/failure was:

    File: 'fsl_bin_do_unpack', lineno: 35, function: <module>

         0031:    # Return to the previous directory

         0032:    os.chdir(save_cwd)

         0033:

         0034:

    *** 0035:fsl_bin_do_unpack(d)

         0036:

    File: 'fsl_bin_do_unpack', lineno: 29, function: fsl_bin_do_unpack

         0025:                save_cwd = os.getcwd()

         0026:                os.chdir(rootdir)

         0027:

         0028:                cmd = "sh %s --auto-accept --force" % (url.localpath)

    *** 0029:                bb.fetch2.runfetchcmd(cmd, d, quiet=True)

         0030:

         0031:    # Return to the previous directory

         0032:    os.chdir(save_cwd)

         0033:

    File: '/home/meysam/fsl-arm-yocto-bsp/sources/poky/bitbake/lib/bb/fetch2/__init__.py', lineno: 709, function: runfetchcmd

         0705:                bb.utils.remove(f, True)

         0706:            except OSError:

         0707:                pass

         0708:

    *** 0709:        raise FetchError(error_message)

         0710:

         0711:    return output

         0712:

         0713:def check_network_access(d, info = "", url = None):

    Exception: FetchError: Fetcher failure: Fetch command failed with exit code 15, output:

    Welcome to Freescale fsl-gpu-sdk-1.1.bin

     

    WARNING: EULA has been auto-accepted; this imply you agree with it anyway.

    Unpacking file ........................................................................................................................................................................

    mkdir: cannot create directory 'fsl-gpu-sdk-1.1': File exists

     

    bzip2: Data integrity error when decompressing.

        Input file = (stdin), output file = (stdout)

     

    It is possible that the compressed file(s) have become corrupted.

    You can use the -tvv option to test integrity of such files.

     

    You can use the `bzip2recover' program to attempt to recover

    data from undamaged sections of corrupted files.

     

    ERROR:

    Signal caught, cleaning up

     

     

    ERROR: Function failed: fsl_bin_do_unpack

    ERROR: Logfile of failure stored in: /home/meysam/fsl-arm-yocto-bsp/build/tmp/work/cortexa9hf-vfp-neon-mx6-poky-linux-gnueabi/fsl-gpu-sdk/1.1-r0/temp/log.do_unpack.26919

    ERROR: Task 387 (/home/meysam/fsl-arm-yocto-bsp/sources/meta-fsl-bsp-release/imx/meta-fsl-demos/recipes-graphics/fsl-gpu-sdk/fsl-gpu-sdk_1.1.bb, do_unpack) failed with exit code '1'

     

    "

    with best wishes.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • e14 Contributor
    e14 Contributor over 11 years ago in reply to tusharp

    Hi,

    Thank you for your replay. Unfortunately your solution did not work for me.Anyway the problem solved by using a solution to bypassing proxy.Thank you again for your replay.

    Meysam

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
<>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube