SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Workflow Guide : Leveraging the
power of YOCTO
Linux OS Porting for Embedded Applications
Workflow Guide : Leveraging the power ofYOCTO
This document is created for the community of developers working
on embedded Linux applications. The purpose of the document is to
guide you through the steps of building an image for Linux
distribution, using the Yocto Framework.
S.– In order to best utilize the information in this document, the
following know-how is a must:
• Familiarity with basic Linux OS operations and Admin tasks
• Understanding of the Yocto Project and OpenEmbedded
Project.
• Understanding of the basics of the build systems
Understanding System Requirements and the OpenEmbedded (OE)
Build System:
Before we discuss about the workflow, it is imperative to develop a
basic understanding regarding the system requirements and OE Build
System. Here are the necessary details.
a. System Requirements:
1.A Host System: Ideally a system with a minimum free disk space
of 50 Gbytes and that runs on any Linux distribution (i.e. Ubuntu,
Fedora, CentOS, openSUSE, or Debian,). Most often a native Linux
machine function is used as the development host.
2.Packages for Builds: Do ensure that your host development
system has the following packages (with respect to Linux
Distribution – Ubuntu, Fedora, CentOS & more)
• Essentials- to build image on a headless system
• Graphical and Eclipse Plug-In Extras
• Documentation
• OpenEmbedded Self-Test
3. Any release of the Yocto Project
b. OpenEmbedded Build System and BitBake Tool
OpenEmbedded (OE) is the build system for the Yocto Project. The
central component of this build system is BitBake.
BitBake performs tasks like parsing the Metadata, Creating task
lists from the Metadata and more.
Figure 2: Yocto IDE
Workflow Guide : Leveraging the power ofYOCTO
The BitBake tool consists of the following functional blocks:
a)User Configuration: This includes the metadata for managing
the YOCTO build process. As a developer, you can define the
build environment by specifying target architecture, location to
store the downloaded source, and other build properties using
User Configuration file.
b)Metadata, Machine & Policy Configuration Layers: These
layers consist of data critical for the management of the build
process.
• Metadata: This layer consists of user-supplied recipe
files, patches, and append files.
• Machine Configuration (BSP): This layer consists of
information specific to your target architecture for which
the image is being built. The information specific to the
machine configuration is provided by the BSP layer of the
Yocto layered architecture model.
• Distro Layer/Policy Configuration: This layer consists of
data that specifies the policy configurations for the
specific distribution. This layer includes class files,
configuration files and recipes. These recipes would
include custom image recipes, distribution-specific
configuration, initialization scripts.
Workflow Guide : Leveraging the power ofYOCTO
c)Source Files: These include sources such as Upstream releases,
local projects, and Source Control Manager (SCMs), from where
the build system downloads source files to build an image.
d)Build System: This block specifies the processes during which
the BitBake fetches source, applies patches, executes
compilation, analyzes output for package generation, generates
and tests these packages, generates images and cross-
development tools.
e)Package Feeds: This module consists of directories with
various types of output packages in RPM, DEB or IPK format.
Package feeds are used while building an image or SDK,
produced by the build system. They are also used for extending
or updating existing images on devices at runtime by copying
and sharing them on web server.
f) Images: This is an output module that manages the Linux
Images created by the Build System.
g)Application Development SDK: The module consists of
various cross-development tools, which are built either along
with the image or separately with BitBake.
Workflow Guide : Leveraging the power ofYOCTO
Workflow for using Yocto project as a build system for Embedded
Linux:
Figure1: Workflow: Building Linux Image using Yocto
Workflow Guide : Leveraging the power ofYOCTO
1. Setup the Host System for YOCTO Build System: The host
system should comply with the minimum system requirements,
as mentioned before.
Additionally, you should test your host build system for the
following:
a. Required Packages
b. Build system is meeting the Minimal Version Requirements of
Git, tar, and Python
c. If not, install a Pre-Built build tools like Tarball, or
d. Build your own build tools similar to Tarball, provided your
build host can run BitBake.
2.Download the required version of the YOCTO release: Set up
the latest Yocto Project files on your host development system by
cloning a local copy of the Poky Git repository.
3.Download the vendor provided meta for the BSP:Depending
on the processor platform (ARM, MIPS, PowerPC, and x86), you
can download the meta data for BSP provided by the specific
vendor.
4.Add the Vendor meta to the Yocto build system: Add the
Vendor meta to your build host environment by creating a local
copy of the repository. For example, meta-intel is the metadata for
the Intel specific target architecture .
5.Make the Build configuration changes: Check the local
configuration file and make the build configuration changes by
editing the bblayers.conf and local.conf files. This should be done
before calling the BitBake command to initialize the build.
Workflow Guide : Leveraging the power ofYOCTO
6.Initialize the Build Environment : Todefine the OpenEmbedded
build environment, the specific setup script on the build host is
executed.
The script creates a Build Directory, which is located in the Source
Directory. After that the current working directory is set to the
Build Directory. Once the build is completed, the Build Directory
will have all the files created during the build.
7.Start Building the image: Now the YOCTO IDE/ framework has
received all the commands necessary for it to build the Linux
image. Next through a series of actions Yocto (IDE)will build the
image as per the information/ specifications in the metadata.
8.Emulating and Testing the Linux Image using QEMU: QEMU as
an emulator and virtualization machine supports testing of Linux
images and applications, built using Yocto Project architectures,
without having to run it on the actual hardware.
Torun the Linux Image on the QEMU Emulator, please use the
runqemu command
9.Writing the Linux image: Depending on the information provided
in the TARGET_DEVICE command, you can write the Linux image
on any of the target device like SATA drive, SD card or even USB key
with the help of mkefidisk.sh script included in the poky repository.
Workflow Guide : Leveraging the power ofYOCTO
Why Use Yocto framework for Linux projects?
1.Easy customization: Yocto has a very robust and powerful
customization architecture which offers numerous customization
options such as footprint sizes, enabling/ disabling of components
like graphics subsystems, visualization middleware, and services.
2.Vendor Support: Yocto Project enjoys the support of most of
the semiconductor and OS vendors and major electronic
manufacturing firms. Thus with Yocto, you can leverage a solid
support ecosystem and achieve your project goals.
3.Reusability: The Yocto project facilitates this through shared
state mechanism. This allows for reuse of resources across similar
builds.
4.Simplified Build operations for Embedded Linux applications:
Single common framework of Yocto has helped get rid of the
dependencies on discrete build systems wherein each of the SoC
vendors created their own build framework compatible only with
their microprocessor platforms.
5.Seamless addition of UI components: Support for enhancing
user experience for devices with display. This is facilitated by
system components like Qt, Clutter, such as X11, GTK+, and SDL .
6.Emulator support: It supports hardware and device emulation
with the QEMU Emulator. Thus, an image built through Yocto
Project can boot inside a QEMU emulator, with the development
environment acting as a test platform for embedded software.
Workflow Guide : Leveraging the power ofYOCTO
7.Added Convenience: With its customizable recipes, tools and
templates for building systems and porting OS, Yocto enables the
developers to focus on other core development tasks.
8.Systematically Managed & Updated: Every 6 months, a new
release of Yocto including kernel (LTSI), toolchain, and package
versions is released.
9.Reduced Time ToMarket for Crucial Embedded Linux
applications: With Yocto, a developer can build the entire Linux
system from scratch in a couple of hours (as low as 1-2 hours
depending on the project components).
10.Readily Available Development Tools: As a Yocto user, you get
access to a wide array of development tools like Application
development Toolkit (ADT), ECLIPSE IDE Plug-in, Graphical UI for
Embedded devices ( Matchbox), tools for QA – among others.
If you wish to know more about how you can use the YOCTO
Project for creating Linux distributions for your embedded
application development projects, please get in touch with our
Product Engineering Team
Workflow Guide : Leveraging the power ofYOCTO
FAQs |IoT solutions for Predictive Maintenance

Weitere ähnliche Inhalte

Mehr von Embitel Technologies (I) PVT LTD

Library of Protocol Stacks for Automotive Vehicle Diagnostics
Library of Protocol Stacks for Automotive Vehicle Diagnostics Library of Protocol Stacks for Automotive Vehicle Diagnostics
Library of Protocol Stacks for Automotive Vehicle Diagnostics Embitel Technologies (I) PVT LTD
 
Board Support Package Solutions | BSP Software Development
Board Support Package Solutions | BSP Software DevelopmentBoard Support Package Solutions | BSP Software Development
Board Support Package Solutions | BSP Software DevelopmentEmbitel Technologies (I) PVT LTD
 
Digital Experience: An Overview of Our Competency in Digital Transformation a...
Digital Experience: An Overview of Our Competency in Digital Transformation a...Digital Experience: An Overview of Our Competency in Digital Transformation a...
Digital Experience: An Overview of Our Competency in Digital Transformation a...Embitel Technologies (I) PVT LTD
 
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine Learning
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine LearningHandbook: IoT Solutions Powered by Artificial Intelligence & Machine Learning
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine LearningEmbitel Technologies (I) PVT LTD
 
FAQs’ for Unit, Integration and Functional Testing Services
FAQs’ for Unit, Integration and Functional Testing ServicesFAQs’ for Unit, Integration and Functional Testing Services
FAQs’ for Unit, Integration and Functional Testing ServicesEmbitel Technologies (I) PVT LTD
 
Introduction to AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)
Introduction to  AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)Introduction to  AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)
Introduction to AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)Embitel Technologies (I) PVT LTD
 
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...Embitel Technologies (I) PVT LTD
 
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway Unit
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway UnitTCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway Unit
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway UnitEmbitel Technologies (I) PVT LTD
 
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control Solutions
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control SolutionsHandbook on Motor Control System: BLDC Motor | PMSM Motor Control Solutions
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control SolutionsEmbitel Technologies (I) PVT LTD
 
Handbook: Android Infotainment | Automotive Infotainment | IVI Solution
Handbook: Android Infotainment | Automotive Infotainment | IVI SolutionHandbook: Android Infotainment | Automotive Infotainment | IVI Solution
Handbook: Android Infotainment | Automotive Infotainment | IVI SolutionEmbitel Technologies (I) PVT LTD
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingEmbitel Technologies (I) PVT LTD
 
Understanding Flash Bootloader Software and Automotive ECU Reprogramming
Understanding Flash Bootloader Software and Automotive ECU ReprogrammingUnderstanding Flash Bootloader Software and Automotive ECU Reprogramming
Understanding Flash Bootloader Software and Automotive ECU ReprogrammingEmbitel Technologies (I) PVT LTD
 

Mehr von Embitel Technologies (I) PVT LTD (20)

Handbook on ISO 26262 Compliant Development
Handbook on ISO 26262 Compliant DevelopmentHandbook on ISO 26262 Compliant Development
Handbook on ISO 26262 Compliant Development
 
Library of Protocol Stacks for Automotive Vehicle Diagnostics
Library of Protocol Stacks for Automotive Vehicle Diagnostics Library of Protocol Stacks for Automotive Vehicle Diagnostics
Library of Protocol Stacks for Automotive Vehicle Diagnostics
 
Board Support Package Solutions | BSP Software Development
Board Support Package Solutions | BSP Software DevelopmentBoard Support Package Solutions | BSP Software Development
Board Support Package Solutions | BSP Software Development
 
Digital Experience: An Overview of Our Competency in Digital Transformation a...
Digital Experience: An Overview of Our Competency in Digital Transformation a...Digital Experience: An Overview of Our Competency in Digital Transformation a...
Digital Experience: An Overview of Our Competency in Digital Transformation a...
 
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine Learning
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine LearningHandbook: IoT Solutions Powered by Artificial Intelligence & Machine Learning
Handbook: IoT Solutions Powered by Artificial Intelligence & Machine Learning
 
Handbook on Functional Testing; HIL | MIL | SIL Testing
Handbook on Functional Testing; HIL | MIL | SIL TestingHandbook on Functional Testing; HIL | MIL | SIL Testing
Handbook on Functional Testing; HIL | MIL | SIL Testing
 
FAQs’ for Unit, Integration and Functional Testing Services
FAQs’ for Unit, Integration and Functional Testing ServicesFAQs’ for Unit, Integration and Functional Testing Services
FAQs’ for Unit, Integration and Functional Testing Services
 
Introduction to AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)
Introduction to  AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)Introduction to  AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)
Introduction to AUTOSAR BSW (Base Software) & RTE (Real-Time Environment)
 
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...
SEooC ISO 26262 | What is Safety Element Out of Context in Automotive Functio...
 
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway Unit
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway UnitTCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway Unit
TCU vs TGU: An Introduction to Telematics Control Unit & Telematics Gateway Unit
 
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control Solutions
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control SolutionsHandbook on Motor Control System: BLDC Motor | PMSM Motor Control Solutions
Handbook on Motor Control System: BLDC Motor | PMSM Motor Control Solutions
 
Handbook: Android Infotainment | Automotive Infotainment | IVI Solution
Handbook: Android Infotainment | Automotive Infotainment | IVI SolutionHandbook: Android Infotainment | Automotive Infotainment | IVI Solution
Handbook: Android Infotainment | Automotive Infotainment | IVI Solution
 
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU ReprogrammingECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
ECU Flashing: Flash Bootloaders that Facilitate ECU Reprogramming
 
HARA ISO 26262: What is HARA and Why is it Required?
HARA ISO 26262: What is HARA and Why is it Required?HARA ISO 26262: What is HARA and Why is it Required?
HARA ISO 26262: What is HARA and Why is it Required?
 
Understanding Flash Bootloader Software and Automotive ECU Reprogramming
Understanding Flash Bootloader Software and Automotive ECU ReprogrammingUnderstanding Flash Bootloader Software and Automotive ECU Reprogramming
Understanding Flash Bootloader Software and Automotive ECU Reprogramming
 
Board Support Package Fact Sheet | Manual Guide
Board Support Package Fact Sheet | Manual GuideBoard Support Package Fact Sheet | Manual Guide
Board Support Package Fact Sheet | Manual Guide
 
UDS Protocol Stack | Manual Guide | Fact Sheet
UDS Protocol Stack | Manual Guide | Fact SheetUDS Protocol Stack | Manual Guide | Fact Sheet
UDS Protocol Stack | Manual Guide | Fact Sheet
 
In-Vehicle Infotainment (IVI) System for Two-Wheelers
In-Vehicle Infotainment (IVI) System for Two-WheelersIn-Vehicle Infotainment (IVI) System for Two-Wheelers
In-Vehicle Infotainment (IVI) System for Two-Wheelers
 
ECU: Electronic Control Units in Electric Two Wheeler
ECU: Electronic Control Units in Electric Two WheelerECU: Electronic Control Units in Electric Two Wheeler
ECU: Electronic Control Units in Electric Two Wheeler
 
CAN FD STACK - TECHNOLOGY GUIDEBOOK
CAN FD STACK - TECHNOLOGY GUIDEBOOKCAN FD STACK - TECHNOLOGY GUIDEBOOK
CAN FD STACK - TECHNOLOGY GUIDEBOOK
 

Kürzlich hochgeladen

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Yocto Project for Custom Design of Linux Images

  • 1. Workflow Guide : Leveraging the power of YOCTO Linux OS Porting for Embedded Applications
  • 2. Workflow Guide : Leveraging the power ofYOCTO This document is created for the community of developers working on embedded Linux applications. The purpose of the document is to guide you through the steps of building an image for Linux distribution, using the Yocto Framework. S.– In order to best utilize the information in this document, the following know-how is a must: • Familiarity with basic Linux OS operations and Admin tasks • Understanding of the Yocto Project and OpenEmbedded Project. • Understanding of the basics of the build systems Understanding System Requirements and the OpenEmbedded (OE) Build System: Before we discuss about the workflow, it is imperative to develop a basic understanding regarding the system requirements and OE Build System. Here are the necessary details. a. System Requirements: 1.A Host System: Ideally a system with a minimum free disk space of 50 Gbytes and that runs on any Linux distribution (i.e. Ubuntu, Fedora, CentOS, openSUSE, or Debian,). Most often a native Linux machine function is used as the development host.
  • 3. 2.Packages for Builds: Do ensure that your host development system has the following packages (with respect to Linux Distribution – Ubuntu, Fedora, CentOS & more) • Essentials- to build image on a headless system • Graphical and Eclipse Plug-In Extras • Documentation • OpenEmbedded Self-Test 3. Any release of the Yocto Project b. OpenEmbedded Build System and BitBake Tool OpenEmbedded (OE) is the build system for the Yocto Project. The central component of this build system is BitBake. BitBake performs tasks like parsing the Metadata, Creating task lists from the Metadata and more. Figure 2: Yocto IDE Workflow Guide : Leveraging the power ofYOCTO
  • 4. The BitBake tool consists of the following functional blocks: a)User Configuration: This includes the metadata for managing the YOCTO build process. As a developer, you can define the build environment by specifying target architecture, location to store the downloaded source, and other build properties using User Configuration file. b)Metadata, Machine & Policy Configuration Layers: These layers consist of data critical for the management of the build process. • Metadata: This layer consists of user-supplied recipe files, patches, and append files. • Machine Configuration (BSP): This layer consists of information specific to your target architecture for which the image is being built. The information specific to the machine configuration is provided by the BSP layer of the Yocto layered architecture model. • Distro Layer/Policy Configuration: This layer consists of data that specifies the policy configurations for the specific distribution. This layer includes class files, configuration files and recipes. These recipes would include custom image recipes, distribution-specific configuration, initialization scripts. Workflow Guide : Leveraging the power ofYOCTO
  • 5. c)Source Files: These include sources such as Upstream releases, local projects, and Source Control Manager (SCMs), from where the build system downloads source files to build an image. d)Build System: This block specifies the processes during which the BitBake fetches source, applies patches, executes compilation, analyzes output for package generation, generates and tests these packages, generates images and cross- development tools. e)Package Feeds: This module consists of directories with various types of output packages in RPM, DEB or IPK format. Package feeds are used while building an image or SDK, produced by the build system. They are also used for extending or updating existing images on devices at runtime by copying and sharing them on web server. f) Images: This is an output module that manages the Linux Images created by the Build System. g)Application Development SDK: The module consists of various cross-development tools, which are built either along with the image or separately with BitBake. Workflow Guide : Leveraging the power ofYOCTO
  • 6. Workflow for using Yocto project as a build system for Embedded Linux: Figure1: Workflow: Building Linux Image using Yocto Workflow Guide : Leveraging the power ofYOCTO
  • 7. 1. Setup the Host System for YOCTO Build System: The host system should comply with the minimum system requirements, as mentioned before. Additionally, you should test your host build system for the following: a. Required Packages b. Build system is meeting the Minimal Version Requirements of Git, tar, and Python c. If not, install a Pre-Built build tools like Tarball, or d. Build your own build tools similar to Tarball, provided your build host can run BitBake. 2.Download the required version of the YOCTO release: Set up the latest Yocto Project files on your host development system by cloning a local copy of the Poky Git repository. 3.Download the vendor provided meta for the BSP:Depending on the processor platform (ARM, MIPS, PowerPC, and x86), you can download the meta data for BSP provided by the specific vendor. 4.Add the Vendor meta to the Yocto build system: Add the Vendor meta to your build host environment by creating a local copy of the repository. For example, meta-intel is the metadata for the Intel specific target architecture . 5.Make the Build configuration changes: Check the local configuration file and make the build configuration changes by editing the bblayers.conf and local.conf files. This should be done before calling the BitBake command to initialize the build. Workflow Guide : Leveraging the power ofYOCTO
  • 8. 6.Initialize the Build Environment : Todefine the OpenEmbedded build environment, the specific setup script on the build host is executed. The script creates a Build Directory, which is located in the Source Directory. After that the current working directory is set to the Build Directory. Once the build is completed, the Build Directory will have all the files created during the build. 7.Start Building the image: Now the YOCTO IDE/ framework has received all the commands necessary for it to build the Linux image. Next through a series of actions Yocto (IDE)will build the image as per the information/ specifications in the metadata. 8.Emulating and Testing the Linux Image using QEMU: QEMU as an emulator and virtualization machine supports testing of Linux images and applications, built using Yocto Project architectures, without having to run it on the actual hardware. Torun the Linux Image on the QEMU Emulator, please use the runqemu command 9.Writing the Linux image: Depending on the information provided in the TARGET_DEVICE command, you can write the Linux image on any of the target device like SATA drive, SD card or even USB key with the help of mkefidisk.sh script included in the poky repository. Workflow Guide : Leveraging the power ofYOCTO
  • 9. Why Use Yocto framework for Linux projects? 1.Easy customization: Yocto has a very robust and powerful customization architecture which offers numerous customization options such as footprint sizes, enabling/ disabling of components like graphics subsystems, visualization middleware, and services. 2.Vendor Support: Yocto Project enjoys the support of most of the semiconductor and OS vendors and major electronic manufacturing firms. Thus with Yocto, you can leverage a solid support ecosystem and achieve your project goals. 3.Reusability: The Yocto project facilitates this through shared state mechanism. This allows for reuse of resources across similar builds. 4.Simplified Build operations for Embedded Linux applications: Single common framework of Yocto has helped get rid of the dependencies on discrete build systems wherein each of the SoC vendors created their own build framework compatible only with their microprocessor platforms. 5.Seamless addition of UI components: Support for enhancing user experience for devices with display. This is facilitated by system components like Qt, Clutter, such as X11, GTK+, and SDL . 6.Emulator support: It supports hardware and device emulation with the QEMU Emulator. Thus, an image built through Yocto Project can boot inside a QEMU emulator, with the development environment acting as a test platform for embedded software. Workflow Guide : Leveraging the power ofYOCTO
  • 10. 7.Added Convenience: With its customizable recipes, tools and templates for building systems and porting OS, Yocto enables the developers to focus on other core development tasks. 8.Systematically Managed & Updated: Every 6 months, a new release of Yocto including kernel (LTSI), toolchain, and package versions is released. 9.Reduced Time ToMarket for Crucial Embedded Linux applications: With Yocto, a developer can build the entire Linux system from scratch in a couple of hours (as low as 1-2 hours depending on the project components). 10.Readily Available Development Tools: As a Yocto user, you get access to a wide array of development tools like Application development Toolkit (ADT), ECLIPSE IDE Plug-in, Graphical UI for Embedded devices ( Matchbox), tools for QA – among others. If you wish to know more about how you can use the YOCTO Project for creating Linux distributions for your embedded application development projects, please get in touch with our Product Engineering Team Workflow Guide : Leveraging the power ofYOCTO
  • 11. FAQs |IoT solutions for Predictive Maintenance