烧头香
目录
欢迎 (2)
Yocto项目开发环境介绍 (2)
Yocto项目特点: (3)
从建立到使用Yocto Project (3)
Linux发行版本: (3)
田野病
秋怎么写构建主机软件包 (4)
Yocto Project发布 (4)
建立镜像 (5)
为仿真器建立镜像 (5)
构建具有实体硬件的镜像: (6)
下一步可以做: (8)
官方链接:
--by陈其敢
欢迎
欢迎来到Yocto项目!Yocto项目是一个开源协作项目,其重点是嵌入式Linux系统的开发人员。其中,Yocto项目的构建主机基于OpenEmbedded(OE)项目,使用BitBake工具构建完整的Linux 镜像。BitBake和OE组件组合在一起以形成参考构建主机,历史上称为Poky。
如果你没有运行Linux的系统,并且你想给Yocto项目一个运行,你可以考虑使用Yocto 项目生成工具。构建设备允许你使用非Linux开发系统使用Yocto项目构建和引导自定义嵌入式Linux镜像。有关详细信息,请参阅Yocto Project Build Appliance。
快速入门是为了让你可以快速设置一个构建主机并且使用Yocto项目,然后构建一些Linux 镜像。而不是提供Yocto项目及其全部功能的详细信息,只是提供使用受支持的Linux构建主机来尝试Yocto项目所
需的最少信息。阅读和使用快速入门会使你对Yocto项目以及如何使用其某些核心组件有一个基本的了解。你还将通过一下步骤生成两个image:一个适合于仿真,一个在实际硬件上启动。这些示例突出显示了如何轻松地使用Yocto项目为多种类型的硬件创建image。
有关Yocto项目的更多详细信息,你可以参考以下资源:
女生背影图片Website: The Yocto Project Website provides the latest builds, breaking news, full development documentation, and access to a rich Yocto Project Development Community into which you can tap.
FAQs: Lists commonly asked Yocto Project questions and answers. You can find two FAQs: Yocto Project FAQ on a wiki, and the "FAQ" chapter in the Yocto Project Reference Manual.
Developer Screencast:The Getting Started with the Yocto Project - New Developer Screencast Tutorial provides a 30-minute video created for urs unfamiliar with the Yocto Project but familiar with Linux build hosts. While this screencast is somewhat dated, the introductory and fundamental concepts are uful for the beginner.
36450321
Yocto项目开发环境介绍
Yocto项目通过OpenEmbedded构建系统提供了针对ARM,MIPS,PowerPC和x86架构的开源开发环境,适用于各种平台,包括x86-64和模拟平台。你可以使用Yocto项目的组件进行开发,构建,调试,模拟和测试完整的软件堆栈在Linux,X Window系统,GTK +框架和Qt框架平台下。
Yocto项目特点:
刺猬兄弟1.提供最新的Linux内核以及适用于嵌入式环境的一套系统命令和库。
2.提供可用的系统组件,例如X11,GTK +,Qt,Clutter和SDL(以及其他),以便你可以在具有显示硬件的设备上创建丰富的用户例子。对于没有显示器或希望使用备用UI框架的设备,无需安装这些组件。
删除空行
3.创建的核心不仅具有专一和稳定的特点且兼容与OpenEmbedded工程,你可以轻松且可靠地进行项目的构建和开发。
4.通过Quick EMUlator(QEMU)技术,因此完全支持各种硬件和设备仿真。
5.提供分层的机制,因此允许你非常容易的扩展系统以及进行自定义,并且不失调理。
你可以使用Yocto项目为多种设备生成镜像。如前所述,Yocto项目支持创建参考镜像,且可以使用QEMU启动和仿真。标准示例机器旨在使用QEMU所有系统进行仿真,例如32位和64位的x86,ARM,MIPS和PowerPC架构的操作系统。除了仿真之外,你还可以依据分层的原理将其应用到任何可以运行Linux和工具链的目标平台。
另一个Yocto项目特性是Sato reference Ur Interface,其基于GTK +,目地在于那些因屏幕大小受限制且作为OpenEmbedded Core层一部分的设备也能让开发者进行软件堆栈的测试。
从建立到使用Yocto Project
以下展示基于linux建立Yocto Project主机以及使用主机建立镜像文件所需的步骤:
1.Build Host至少拥有50G空闲磁盘空间且运行linux发行版的主机(i.e. recent releas of Fedora, openSUSE, CentOS, Debian, or Ubuntu).
2.Build Host Packages在构建主机上安装适当的软件包。
3.The Yocto Project一个已经发布的yocto project
Linux发行版本:
Ubuntu
Fedora
openSUSE
CentOS
Debian
有关支持Yocto项目的分发版本更详细的列表,请参阅Yocto项目参考手册中的“"Supported Linux Distributions"部分。OpenEmbedded构建系统应该能运行在能支持以下版本的Git,tar 和PythonGit 1.8.3.1 or greater工具的任何版本。
tar 1.24 or greater
Python 3.4.0 or greater.
如果构建主机不满足上述三个要求中的任何一个,你应该做好软件支持,以便你可以使用Yocto项目。有关信息,请参阅Yocto项目参考手册中的“"Required Git, tar, and Python Versions”章节。
构建主机软件包
所需的构建主机包取决于构建机器和你使用的Yocto项目。例如,如果要构建一个可以以图形模式(最小的基本构建要求)在QEMU上运行的镜像,那么构建主机包的要求和用于无头系统上的镜像或构建Yocto项目文档集是不同的。
总的来说,如果你想覆盖所有情况,所需的软件包数量很大。
注意:
一般而言,你需要在root权限下安装所需的软件包。因此,下一节中的命令是否正常工作决于你的Linux发行版是否安装了sudo。
以下列表显示了建立能在QEMU上以图形模式运行的镜像(必需有图形支持)所需的软件包。有关其他方案的所需软件包列表,请参阅the Yocto Project Reference Manual的"Required Packages for the Host Development System"部分。
Ubuntu and Debian
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \
build-esntial chrpath socat libsdl1.2-dev xterm
Fedora
sudo dnf install gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \
ccache perl-Data-Dumper perl-Text-ParWords perl-Thread-Queue perl-bignum socat \
findutils which SDL-devel xterm
OpenSUSE
sudo zypper install python gcc gcc-c++ git chrpath make wget python-xml \
超声医生diffstat makeinfo python-curs patch socat libSDL-devel xterm
CentOS
电信诈骗案sudo yum install gawk make wget tar bzip2 gzip python unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath socat \
perl-Data-Dumper perl-Text-ParWords perl-Thread-Queue SDL-devel xterm
注意:
CentOS 6.x的用户需要检查Git, tar and Python工具的版本是否可用。详见the Yocto Project Reference Manual 的“Required Git, tar, and Python Versions”章节。
Yocto Project发布
使用Yocto项目之前需要满足的最后要求是获得一个已经发布的Yocto项目。建议在主机上构建(以Git语言克隆)一个Poky Git存储库的本地副本,然后检查最新版本,从而获得最
新的Yocto项目版本。这样做能轻松更新到较新的Yocto项目版本,以及方便的贡献你的Yocto项目。
下面是一个来自Ubuntu构建主机的示例,它克隆了Poky的存储库,然后检查最新的Yocto 项目版本(即2.2):
$ git clone git://project/poky
Cloning into 'poky'...
remote: Counting objects: 226790, done.
remote: Compressing objects: 100% (57465/57465), done.
remote: Total 226790 (delta 165212), reud 225887 (delta 164327)
Receiving objects: 100% (226790/226790), 100.98 MiB | 263 KiB/s, done.
Resolving deltas: 100% (165212/165212), done.
$ git checkout morty
你一样可以通过Yocto Project websit来下载发布版本。
有关建立Yocto项目的更多信息,请参阅the Yocto Project Development Manual中的“Yocto Project Relea”章节。
建立镜像
现在,你满足了所有的系统要求,如此是时候测试Yocto项目了。你可以使用命令行界面或Toaster(图形用户界面)来测试Yocto Project。如果要使用GUI测试Yocto项目,请参阅“Toaster Ur Manual”,了解有关如何安装和设置Toaster的信息。
1.建立qemux86参考镜像并在QEMU仿真器中运行。
2.可以轻松更改配置,因此你可以快速创建第二个镜像,将其加载到可启动媒体或者目标板上。本示例使用MinnowBoard MAX-compatible board。
注意:
以下两个部分的步骤不提供细节,而是提供必要的工作命令和示例,旨在让你入门。更多详细信息,请参阅Yocto Project manual t中对应手册手册。
为仿真器建立镜像
使用一下命令建立你的镜像,OpenEmbedded构建系统从源代码创建一个完整的Linux发行版,包括工具链。
有关网络代理:
By default, the build process arches for source code using a pre-determined order through a t of locations. If you are working behind a firewall and your build host is not t up for proxies, you could encounter problems with the build process when fetching source code (e.g. fetcher failures or Git failures).
If you do not know your proxy ttings, consult your local network infrastructure resources and get that information. A good starting point could also be to check your web browr ttings. Finally, you can find more information on using the Yocto Project behind a firewall in the Yocto Project Reference Manual FAQ and on the "Working Behind a Network Proxy" wiki page.
1. 确保构建主机已正确设置:在此部分中构建镜像成功与否取决于构建主机是否正确配置。确保你已经完成了“Setting Up to U the Yocto Project”一节中描述的要求。
2.检查你的分支:确定你在顶层目录下(例如:poky)之后检查与Yocto Project发行版关联的分支。
cd ~/poky