一、简介
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、4、5 和 6 显示了如何在各种发行版上安装所需的程序包。
清单 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
2、Freescale Yocto的安装,环境Ubuntu14.04
3、使用 Yocto Project 构建自定义嵌入式 Linux 发行版