本文以往rootfs中添加一個軟件包為例,闡述使用Yocto定制發(fā)行版的大致流程。
有關Yocto的功能和結構介紹,詳見Yocto詳解
一般有兩種情況:一種是公司服務器中已有了Yocto,我們只需在個人賬戶下簡單復制Yocto開發(fā)環(huán)境即可。另一種情況是什么都沒有,在服務器或個人電腦上從零搭建Yocto開發(fā)環(huán)境。
在這里我們假設已經(jīng)有了Yocto需要的基本依賴庫,如果真的要從零開始配各種依賴庫,可以參考https://www.ibm.com/developerworks/cn/linux/l-yocto-linux/
首先最重要的是得到Repo工具,Repo 工具為 Git 的封裝,底層是使用 Git 命令進行下載的,我們將使用它來獲取Poky。我們假設服務器中已經(jīng)有了一個repo,那么很簡單,直接復制到自己賬戶目錄下
#在服務器中登錄自己的賬號
mkdir ~/bin
cp /xxx/bin/repo ~/bin/repo
chmod a+x ~/bin/repo
echo "export PATH=~/bin:$PATH" >> ~/.bashrc
~/.bashrc
如果服務器中沒有呢?可以這樣子,具體的我也沒試過,應該是可以的
git clone https://gerrit.googlesource.com/git-repo
cd git-repo/
git checkout v1.12.4
cp ../git-repo/repo ~/bin/repo
mkdir imx6_avi
cd imx6_avi
repo init -u xxx@gitxxx.xxx.org:xxx/xxx.git -b "xxx"
repo sync
如果服務器中沒有的話,那就要從其他地方獲取了,比如原廠提供的:
repo init -u git://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-3.10.17-1.0.0_ga
repo sync
mkdir ~/imx6_avi/build
chmod 777 ~/imx6_avi/build
source xxx-init-build-env sources imx6