1. 前言

Yocto 是一套針對嵌入式的編譯架構. 第三方的開發商可以輕易地針對 yocto 撰寫相關的 meta layer. 使用者僅僅把第三方的meta layer 加入到 yocto, 即可輕鬆編譯出可運行於此開發版的映象檔(image).

由於 yocto meta layer 很多, 不同廠商有個自己的 layer 以及依賴的 layer. 鑑於此, 使用json 來配置不同專案置所需的 yocto 環境出來. 以下就針對設定檔的格式進行說明.

 

 

  1. environments.json 說明
  2. 說明

主要是用 json 紀錄每一個專案所用的 yocto 以及相關的 meta layers 資訊. 再搭配一些對於此專案的補充說明.

 

  1. 檔案路徑

build/environment/environments.json

 

  1. json格式:

 

{

        "branch": "%s",                      #所使用的Branch

        "platforms": [                         #儲存專案的yocto 配置

                {

                        "name": "%s",                                #存放的目錄名稱

                        "menu": "%s",                                #所顯示項目的名稱

                        "description": "%s",                       #針對項目(menu)的額外描述

                        "machine_list": ["%s", … ]            #此專案底下可選擇的 machines

                        "distro_list": [ "%s", … ]               #此專案底下可選擇的 distros

                        "howto": "%s"                                #此專案的提示字串. 譬如:可用的recipe指令

                        "yocto_src":                                   #Yocto source的配置

                        {

                                "url": "%s",                               #Source code url 位址

                                "branch": "%s",

                                "name": "%s",

                        },

                        "meta_sc": [                                                #描述yocto所額外使用的meta-layers. 請依照相依關係, 由上至下依序填寫

                                "url": "%s",

                                "branch": "%s",

                                "name": "%s",

                                "meta_path": ["%s", "%s", …]           #meta layer 的路徑. 預設應與 name 相同.

                        ]

                }

        ]

}

 

  1. json 欄位:

名稱

型態

數值

描述

branch

string

 

所使用的Branch

platforms

Object array

 

儲存專案的yocto 配置

name

string

 

存放的目錄名稱

menu

string

 

所顯示項目的名稱

description

string

 

針對項目(menu)的額外描述

machine_list

String array

 

此專案底下可選擇的 machines

distro_list

String array

 

此專案底下可選擇的 distros

howto

string

 

此專案的提示字串. 譬如:可用的recipe指令

yocto_src

object

 

Yocto source的配置

url

string

 

Source code url 位址

meta_path

String array

 

meta layer 的路徑. 預設應與 name 相同.

e.g.

本身就是layer => "meta-rockchip"

子目錄為layer => "meta-openembedded/meta-oe"

meta_src

Object array

 

描述yocto所額外使用的meta-layers. 請依照相依關係, 由上至下依序填寫

 

  1. json範例

底下針對 iei-ubuntu專案的 yocto配置.

 

{

   "branch":"master",

   "platforms":[

       {

           "name": "xxx-ubuntu",

           "menu": "XXA / XXB / XXC ",

           "description":"Image With Custom Ubuntu",

           "yocto_src":{

               "url":"http://10.10.2.111/xxxxxx/poky.git",

               "branch":"rocko",

               "name":"poky"

           },

           "meta_src":[

               {

                   "url":"http://10.10.2.111/xxxxxx/meta-bbb.git",

                   "branch":"rocko",

                   "name":"meta-rockchip",

                   "meta_path":[

                       "meta-rockchip"

                   ]

               },

              {

                   "url":"http://10.10.2.111/xxxxxx/meta-xxx.git",

                   "branch":"rocko",

                   "name":"meta-xxx",

                   "meta_path":[

                       "meta-xxx/meta-xxx-ubuntu"

                   ]

               }

           ],

           "machine_list":["exA", "exB"],

           "distro_list":[],

           "howto":"Image Recipes:\n\tbitbake xxx-custom-ubuntu-image"

       }

}

    全站熱搜

    立你斯 發表在 痞客邦 留言(0) 人氣()