3、yocto筆記--搭建Yocto環境
一、簡介
1、搭建Yocto環境,安裝好建立工程所依賴的工具後,才能構建系統或者SDK。
二、配置要求
1、X86電腦+linux系統或者是X86電腦+linux虛擬機器;
2、50G儲存,官網介紹的書籍和NXP freescale 晶片對應的BSP教程介紹至少要有50G free space,實際工程需要,最好是不低於200G;
3、建議是Ubuntu 14.04;
4、Git 1.8.3.1 或更高版本
5、tar 1.24 或更高
6、Python 2.7.3 或更高版本,不包括Python 3.x,不支援。
三、搭建步驟
1、下載 Yocto Project 工具
使用兩種方法中的任意一種下載 Yocto Project。確保使用一個至少有 50GB 空閒空間的磁碟。建議空閒空間是 100GB。
- 您可以從 Yocto Project 下載頁面下載最新測試完畢的發行版的一個
tar
檔案。下載tar
檔案,然後將其解壓到一個目錄,如 清單 1 所示。清單 1. 下載 poky
$ wget \ http://downloads.yoctoproject.org/releases/yocto/yocto-1.2/poky-denzil-7.0.tar.bz2 $ tar xjf poky-denzil-7.0.tar.bz2 $ cd poky-denzil-7.0
- 您可以使用
git
獲取最新發行版(或任何特定分支),儘管主開發分支可能不如tar
檔案中測試過的發行版穩定。清單 2 顯示瞭如何使用git
下載最新版本。清單 2. 使用 git 獲取 poky
$ git clone git://git.yoctoproject.org/poky.git $ cd poky
注意,本例中的子目錄簡單地使用了
poky
這一名稱,不帶版本號,因為隨時可以使用git
更新它。
2、初始化環境
要初始化您的工作環境,請遵循以下步驟:
-
(1)首先,從您的主機系統的軟體庫中選擇並安裝所有必需的開發包。如果已經以前在主機上開發過軟體,那麼有可能已經安裝好了大部分開發包。清單
清單 3. 在 Ubuntu 上安裝必備元件
$ sudo apt-get install sed wget subversion git-core coreutils \ unzip texi2html texinfo libsdl1.2-dev docbook-utils fop gawk \ python-pysqlite2 diffstat make gcc build-essential xsltproc \ g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev \ autoconf automake groff libtool xterm libxml-parser-perl
清單 4. 在 Fedora 上安裝必備元件
$ sudo yum groupinstall "development tools" $ sudo yum install python m4 make wget curl ftp tar bzip2 gzip \ unzip perl texinfo texi2html diffstat openjade \ docbook-style-dsssl sed docbook-style-xsl docbook-dtds fop xsltproc \ docbook-utils sed bc eglibc-devel ccache pcre pcre-devel quilt \ groff linuxdoc-tools patch cmake \ perl-ExtUtils-MakeMaker tcl-devel gettext chrpath ncurses apr \ SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \ autoconf automake libtool xterm
清單 5. 在 CentOS 上安裝必備元件
$ sudo yum -y groupinstall "development tools" $ sudo yum -y install tetex gawk sqlite-devel vim-common redhat-lsb xz \ m4 make wget curl ftp tar bzip2 gzip python-devel \ unzip perl texinfo texi2html diffstat openjade zlib-devel \ docbook-style-dsssl sed docbook-style-xsl docbook-dtds \ docbook-utils bc glibc-devel pcre pcre-devel \ groff linuxdoc-tools patch cmake \ tcl-devel gettext ncurses apr \ SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils \ autoconf automake libtool xterm
清單 6. 在 openSUSE 上安裝必備元件
$ sudo zypper install python gcc gcc-c++ libtool fop \ subversion git chrpath automake make wget xsltproc \ diffstat texinfo freeglut-devel libSDL-devel
-
(2)使用所提供的指令碼設定您的 shell 環境。執行該指令碼之後,您的工作目錄是
build
子目錄,您可以從該位置執行您的版本。$ cd poky $ . ./oe-init-build-env
-
(3)檢查主配置檔案 (conf/local.conf)。預設情況下,建立配置檔案是為了建立
qemux86
映像,即模擬 32 位 x86 處理器的一個 QEMU 例項。如果您有一個多處理器主機,強烈建議您取消註釋以下並行性選項來加速編譯。目前暫時將這兩個值設定為處理器核心數的兩倍(例如,對於一個 4 核處理器,應該將該值設定為 8)。BB_NUMBER_THREADS = "8" PARALLEL_MAKE = "-j 8"
致謝
1、creating-a-general-layer-using-the-yocto-layer-script