i.MX6UL -- Yocto工程編譯過程
運行平臺:珠海鼎芯D518 -- 基於i.MX6UL
編譯系統:Linux4.1.15
一、 Yocto工程交叉編譯過程依照官方文檔,這裏主要記錄實踐過程:
參考資料:<Freescale_Yocto_Project_User's_Guide.pdf>
1、主機配置,要求系統版本在Ubuntu12.04或以上。現推薦Ubuntu14.04,存儲空間要求在120GB或以上;
2、主機依賴包安裝
- Yocto工程主機基礎包:
$ sudo apt-get install gawk wget git-corediffstat unzip texinfo gcc-multilib \
build-essential chrpath socat libsdl1.2-dev
- iMX層主機包1:Ubuntu12.04或Ubuntu14.04
$ sudo apt-get install libsdl1.2-dev xtermsed cvs subversion coreutils texi2html \
docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils\
libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff curflzop asciidoc
- iMX層主機包2:Ubuntu12.04
$ sudo apt-get install uboot-mkimage
- iMX層主機包2:Ubuntu14.04
$ sudo apt-get install u-boot-tools
3、安裝repo工具
$ mkdir ~/bin
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo> ~/bin/repo
注:國內需要【科學上網】才能下載到repo工具,如果下載不到,可以點擊這裏下載。
$ sudo chmod a+x ~/bin/repo
$ export PATH=~/bin:$PATH
4、Yocto工程配置及編譯
$ mkdir ~/bin/fsl-release-bsp
$ cd ~/bin/fsl-release-bsp
$ git config --global user.name “Your Name”
$ git config --global user.email“Your Email”
$ git config --list
$ repo init -ugit://git.freescale.com/imx/fsl-arm-yocto-bsp.git -b imx-4.1.15-1.0.0_ga
$ repo sync (第一次裝,這一步用時比較長(可能會幾個小時,主要看網速怎樣) )
$ DISTRO=fsl-imx-fb MACHINE=< machine name >source fsl-setup-release.sh -b < build directory > -e < backend, fb,dfb, wayland, x11 >
例如:MACHINE=imx6ulevk source fsl-setup-release.sh -b build-fb -e fb
當這個過程完成後,源代碼被檢查在fsl-release-bsp/source下;
可以使用”$repo sync”命令進行repo同步,週期性的更新到最新的代碼
$ bitbake fsl-image-qt5 ( 此編譯過程需要時間稍長 )
注:如果編譯過程中出現錯誤,且錯誤信息較多時,可將標準輸出重定向到文件中,方便查找錯誤原因。示例如下:
$ bitbake fsl-image-qt5 2>&1 | tee bitbake_fsl-image-qt5.out
至此,基本的Yocto工程就編譯完成了,最終鏡像在< build directory >/tmp/deploy/images/imx6ulevk/目錄下。