定制可擴充SDK
-
- 1.安裝其他項目到可擴充SDK
- 2.将更新應用到已安裝的可拓展SDK
- 3.建立具有其他元件的衍生SDK
1.安裝其他項目到可擴充SDK
原生的可擴充SDK通常僅帶有少量工具和庫。最小的SDK開始時幾乎是空的,并且是按需填充的。有時,你必須将額外的項目明确地安裝到SDK中。如果需要這些額外的項目,則可以先使用devtool search指令搜尋這些項目。 例如,假設需要連結到libGL,但不确定哪個配方提供libGL。可以使用以下指令來查找:
$ devtool search libGL mesa
隻要知道OpenGL API的開源實作的recie(即本示例中的mesa),就可以直接安裝它:
$ devtool sdk-install mesa
預設情況下,devtool sdk-install指令假定該項目可從你的SDK提供程式以預建構的形式獲得。如果該項目不可用,并且可以從源代碼建構該項目,可以添加“-s”選項,如下所示:
$ devtool sdk-install -s mesa
需要知道的是,從源代碼建構項目要比安裝預建構器件花費的時間更長。另外,如果要添加到SDK的項目不存在配方,則必須使用devtool add指令添加該項目。
2.将更新應用到已安裝的可拓展SDK
如果使用的是偶爾更新的已安裝的可擴充SDK(例如第三方SDK),則需要手動将更新pull down到已安裝的SDK中。
使用如下指令,更新已安裝的SDK:
$ devtool sdk-update
上述指令假定你的SDK提供程式已認證SDK_UPDATE_URL變量為你設定了預設更新URL,如Providing Updates to the Extensible SDK After Installation部分所述。如果SDK提供程式未設定該預設URL,則需要在指令中自行指定,如下所示:
$ devtool sdk-update path_to_update_directory
注意:
URL需要專門指向已釋出的SDK,而不是要下載下傳和安裝的SDK安裝程式。
3.建立具有其他元件的衍生SDK
首先,需要生成一個包含自定義庫的SDK。如下是一個很好的例子,如果你是廠商,客戶使用你的SDK來建構自己特定于平台的軟體,而這些客戶需要具有自定義庫的SDK。在這種情況下,可以按照以下步驟,基于目前安裝的SDK生成衍生SDK:
- 安裝一個可拓展SDK,并以此為基礎生成你的衍生SDK。
- SDK環境配置腳本。
- 使用devtool add指令添加所需的額外庫或其他元件。
- 運作devtool build-sdk指令。
上述步驟将recipes添加到工作區,并構造一個新的SDK安裝程式,其中包含這些配方和生成的二進制元件。recipes進入已建構的派生SDK的各自的隔離層中,進而使工作區幹淨,并可供使用者添加自己的配方。