?培訓對象:
? 嵌入式系統(tǒng)開發(fā)人員,Linux內核開發(fā)人員,硬件工程師,物聯(lián)網(IoT)開發(fā)人員,系統(tǒng)集成商,軟件工程師,研究生.
培訓目標:
? 本次Yocto項目培訓旨在幫助學員全面掌握Yocto項目開發(fā)的核心技能,從基礎知識到高級應用,包括構建系統(tǒng)、Recipe編寫與調試、鏡像定制、BSP移植以及版本控制等,使學員能夠在實際項目中熟練運用Yocto進行嵌入式系統(tǒng)開發(fā)。
?
培訓內容:
一:Yocto基礎與構建系統(tǒng)
?
1.Yocto基本知識
2.Yocto是什么,快速介紹YOCTO
3.Yocto, Open Embedded and Poky三者關系的介紹
4.Poky和bitbake概述
5.Yocto 項目有什么用?
6.Yocto 架構/結構
7.架構總覽
8.Recipes and classes介紹
9.Tasks 任務介紹
?
1.練習:檢查ACTIA項目開發(fā)環(huán)境
2.與工程師互動,了解當前開發(fā)環(huán)境
3.Yocto build system
4.構建系統(tǒng)的目標:構建一個可部署的鏡像
5.練習:用YOCTO構建一個根文件系統(tǒng)
6.Build system 架構:層和層的優(yōu)先級、目錄結構、配置文件(Local, Machine, Distro)
7.使用Yocto
8.bitbake 工具介紹:常見選項、基本命令
9.Building 一個包和鏡像(root file system + u-boot + kernel)
二:編寫與修改Yocto Recipes
?
1.編寫Yocto recipes
2.不同類型的recipes and classes(bare program, makefile, autotools, u-boot, kernel, 設備樹外模塊)
3.Recipe 創(chuàng)建策略:從頭開始、使用devtool、recipetool、基于現(xiàn)有相似的recipe
4.Debugging recipes
5.Debugging recipe 選擇、依賴關系、任務
?
?
1.定義打包與自動啟動程序
2.包分割
3.自動啟動程序 (class update-rc.d)
4.修改 recipes
5.自定義一個已有包的recipe (.bbappend):Recipe 依賴項、創(chuàng)建和添加補丁
6.為開源社區(qū)和用戶維護的組件創(chuàng)建補丁
7.定義新任務:任務聲明、Coding任務
8.使用可擴展的SDK and devtool的開發(fā)過程
9.用devtool 創(chuàng)建package和他的recipes
10.用devtool修改現(xiàn)有的 package and recipe
三:高級Yocto Recipes與GIT實踐
?
1.創(chuàng)建新類型的recipes
2.創(chuàng)建類:新的獨立類、繼承現(xiàn)有類
3.創(chuàng)建一個根文件系統(tǒng)
4.用yocto構建根文件系統(tǒng):創(chuàng)建定制的根文件系統(tǒng)
5.編寫一個鏡像 recipe:選擇要構建的軟件包、文件系統(tǒng)類型、不同類型的鏡像
6.繼承和定制鏡像:定制系統(tǒng)配置文件 (network, mount points, …)
7.包管理
8.rpm與opkg介紹
?
1.GIT介紹
2.目前開發(fā)中常用的GIT工具介紹
3.Yocto開發(fā)過程結合GIT工具進行工程項目管理
4.實踐分享
5.設備驅動開發(fā)實例:以GMSL2端口為例,從頭開始講解驅動開發(fā)的實際操作步驟
6.答疑解惑