OpenEmbedded/zh cn

From Openmoko

(Difference between revisions)
Jump to: navigation, search
Line 6: Line 6:
 
更多的信息请查阅网站 [http://www.openembedded.org/ Open Embedded]。
 
更多的信息请查阅网站 [http://www.openembedded.org/ Open Embedded]。
  
== Master Build Server ==
+
== 使用OpenEmbedded建立Openmoko套件 ==
  
There is a master build server, it has the hostname buildhost.openmoko.org.  Shell accounts are only available to core developers and the "distribution maintainer", once we have created such a job/task ;)
+
请注意,如果你是一个程序开发人员,你可能不会想要使用OpenEmbedded建立Openmoko套件。若是这种情况,你最好是使用你预建的[[Toolchain]]。建立Openmoko套件是需要花费时间、cpu及磁盘耗用,所以,若你是系统整合的人员,或者是想要客制化你的Openmoko套件,你才需要进行这个工作。
  
The idea is that all official images and binary packages (ipk) are built on one machine with a well-defined environment.
+
[[MokoMakefile]],是简化建立OpenEmbedded的设备。若你是aformentioned 系统整合人员/套件客制化人员的话,我们强烈的建议你直接使用BitBake及OpenEmbedded 。
  
== Build Process with OpenEmbedded ==
+
=== OpenEmbedded mirror ===
 +
在OpenEmbedded中正式的Openmoko mirror可以在[[MonotoneServer]]上找到。如果你还没有monotone database,你可以自 [http://downloads.openmoko.org/OE/snapshots/OE.mtn.bz2 snapshot database]下载,并且解开它:
  
=== OE upstream snapshot ===
+
cd /local/pkg/oe
 +
wget http://downloads.openmoko.org/OE/snapshots/OE.mtn.bz2
 +
bzip2 -d OE.mtn.bz2
  
We start from an OpenEmbedded snapshot from the official "upstream" aka "Vanilla" OpenEmbedded project. This snapshot contains the [[BitBake recipe]]s for thousands of packages
+
这比使用monotone 从我们的mirror中取回启始的数据库快速。接着,更新你的目录,虽然它可能应该从 monotone server进行(注意,它只是一个monotone server,并不包含web):
  
=== OpenMoko OE overlay tree ===
+
mtn --db=/local/pkg/oe/OE.mtn pull
 
+
  mtn update
In addition to the upstream recipies, we also have a set of our own recipies.  They are available from http://svn.openmoko.org/trunk/oe/ ([http://svnweb.openmoko.org/trunk/oe/ SVNweb]).
+
 
+
The ''overlay'' tree works in the following way: It gives us the ability to add rules below a seperate directory tree. This means we don't have to edit or add rules to the upstream snapshot, and we always have a clear distinction about what is upstream, and what is our additions to it.
+
  
 
=== Upstream Source tarballs ===
 
=== Upstream Source tarballs ===
  
When bitbake builds a particular OE package, it downloads the original source code of the upstream project (e.g. Linux kernel) from the web.
+
当bitbake建立了特定的OE套件时,它会从网络上下载upstream 项目的原始程序代码(Linux kernel)及 patches。在下载了原始码之后,bitbake 会套用patche文件到目录中,这些patche有的是从网络上下载下来的,或者是包含在OpenEmbemdded metadata 储存地址中。这些 unpatched source tarballs 可以在http://downloads.openmoko.org/sources/ 这个地址下载。
After downloading it, it applies a series of local patches to it.  Those patches are from either the [[OpenEmbedded#OE_upstream_snapshot]], or from the [[OpenEmbedded#OpenMoko_OE_overlay_tree]]. 
+
 
+
The unpatched source tarballs are available from http://buildhost.openmoko.org/sources/
+
 
+
=== 构建目录===
+
 
+
The content of the build directory is available at
+
* http://buildhost.openmoko.org/OM2007.1/tmp/ (old OpenMoko tree)
+
* http://buildhost.openmoko.org/OM2007.2/tmp/ (new OpenMoko tree)
+
 
+
It contains
+
* cache
+
** Internal caching data, not for human interpretation
+
* cross
+
** The cross-compilation toolchain used. You can download this and use it on your local machine.
+
* deploy
+
** deploy/images
+
*** The filesystem, kernel and bootloader images to be flashed into NAND
+
** deploy/ipk
+
*** the .ipk packages
+
* rootfs
+
** the extracted root filesystem. Please use the images from deploy/images instead
+
* staging
+
** no user servicable parts inside
+
* stamp
+
** internal state data
+
* work
+
** the actual build trees (including patches source code and binaries) of the individual packages
+
 
+
=== 二进制包===
+
 
+
The binary packages of intermediate "unofficial" releases are available at
+
* http://buildhost.openmoko.org/OM2007.1/tmp/deploy/ipk (old OpenMoko tree)
+
* http://buildhost.openmoko.org/OM2007.2/tmp/deploy/ipk (new OpenMoko tree)
+
  
The snapshots (which have recieved some testing) are available at http://buildhost.openmoko.org/snapshots/
+
{{todo|finish article}}
  
 
{{Languages|OpenEmbedded}}
 
{{Languages|OpenEmbedded}}
[[Category:Openmoko|OpenMoko]]
+
[[Category:Software ]]
 +
[[Category:Application Developer]]
 +
[[Category:Openmoko]]

Revision as of 10:45, 20 May 2008

Openmoko, 是用OpenEmbedded构建的。OpenEmbedded将做到:

  • 为多个嵌入式目标环境生成(交叉编译)软件包。
  • 处理不同的硬件体系结构,提供多个版本来支持这些不同的体系结构。

更多的信息请查阅网站 Open Embedded

使用OpenEmbedded建立Openmoko套件

请注意,如果你是一个程序开发人员,你可能不会想要使用OpenEmbedded建立Openmoko套件。若是这种情况,你最好是使用你预建的Toolchain。建立Openmoko套件是需要花费时间、cpu及磁盘耗用,所以,若你是系统整合的人员,或者是想要客制化你的Openmoko套件,你才需要进行这个工作。

MokoMakefile,是简化建立OpenEmbedded的设备。若你是aformentioned 系统整合人员/套件客制化人员的话,我们强烈的建议你直接使用BitBake及OpenEmbedded 。

OpenEmbedded mirror

在OpenEmbedded中正式的Openmoko mirror可以在MonotoneServer上找到。如果你还没有monotone database,你可以自 snapshot database下载,并且解开它:

cd /local/pkg/oe
wget http://downloads.openmoko.org/OE/snapshots/OE.mtn.bz2
bzip2 -d OE.mtn.bz2

这比使用monotone 从我们的mirror中取回启始的数据库快速。接着,更新你的目录,虽然它可能应该从 monotone server进行(注意,它只是一个monotone server,并不包含web):

mtn --db=/local/pkg/oe/OE.mtn pull
mtn update

Upstream Source tarballs

当bitbake建立了特定的OE套件时,它会从网络上下载upstream 项目的原始程序代码(如 Linux kernel)及 patches。在下载了原始码之后,bitbake 会套用patche文件到目录中,这些patche有的是从网络上下载下来的,或者是包含在OpenEmbemdded metadata 储存地址中。这些 unpatched source tarballs 可以在http://downloads.openmoko.org/sources/ 这个地址下载。

TODO: finish article (See: To-Do List)
Personal tools

Openmoko, 是用OpenEmbedded构建的。OpenEmbedded将做到:

  • 为多个嵌入式目标环境生成(交叉编译)软件包。
  • 处理不同的硬件体系结构,提供多个版本来支持这些不同的体系结构。

更多的信息请查阅网站 Open Embedded

使用OpenEmbedded建立Openmoko套件

请注意,如果你是一个程序开发人员,你可能不会想要使用OpenEmbedded建立Openmoko套件。若是这种情况,你最好是使用你预建的Toolchain。建立Openmoko套件是需要花费时间、cpu及磁盘耗用,所以,若你是系统整合的人员,或者是想要客制化你的Openmoko套件,你才需要进行这个工作。

MokoMakefile,是简化建立OpenEmbedded的设备。若你是aformentioned 系统整合人员/套件客制化人员的话,我们强烈的建议你直接使用BitBake及OpenEmbedded 。

OpenEmbedded mirror

在OpenEmbedded中正式的Openmoko mirror可以在MonotoneServer上找到。如果你还没有monotone database,你可以自 snapshot database下载,并且解开它:

cd /local/pkg/oe
wget http://downloads.openmoko.org/OE/snapshots/OE.mtn.bz2
bzip2 -d OE.mtn.bz2

这比使用monotone 从我们的mirror中取回启始的数据库快速。接着,更新你的目录,虽然它可能应该从 monotone server进行(注意,它只是一个monotone server,并不包含web):

mtn --db=/local/pkg/oe/OE.mtn pull
mtn update

Upstream Source tarballs

当bitbake建立了特定的OE套件时,它会从网络上下载upstream 项目的原始程序代码(如 Linux kernel)及 patches。在下载了原始码之后,bitbake 会套用patche文件到目录中,这些patche有的是从网络上下载下来的,或者是包含在OpenEmbemdded metadata 储存地址中。这些 unpatched source tarballs 可以在http://downloads.openmoko.org/sources/ 这个地址下载。

TODO: finish article (See: To-Do List)