diff options
| -rw-r--r-- | documentation/yocto-project-qs/Makefile | 32 | ||||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/building-an-image.png | bin | 0 -> 13954 bytes | |||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/cropped-yocto-project-bw.png | bin | 0 -> 5453 bytes | |||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/using-a-pre-built-image.png | bin | 0 -> 12131 bytes | |||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/white-on-black.png | bin | 0 -> 18296 bytes | |||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/yocto-environment.png | bin | 0 -> 62764 bytes | |||
| -rwxr-xr-x | documentation/yocto-project-qs/figures/yocto-project-transp.png | bin | 0 -> 8626 bytes | |||
| -rw-r--r-- | documentation/yocto-project-qs/style.css | 963 | ||||
| -rw-r--r-- | documentation/yocto-project-qs/yocto-project-qs-customization.xsl | 8 | ||||
| -rw-r--r-- | documentation/yocto-project-qs/yocto-project-qs.xml | 307 | 
10 files changed, 1310 insertions, 0 deletions
| diff --git a/documentation/yocto-project-qs/Makefile b/documentation/yocto-project-qs/Makefile new file mode 100644 index 0000000000..9f45058c51 --- /dev/null +++ b/documentation/yocto-project-qs/Makefile @@ -0,0 +1,32 @@ +XSLTOPTS = --stringparam html.stylesheet style.css \ +         --xinclude + +XSL_BASE_URI  = http://docbook.sourceforge.net/release/xsl/current +XSL_XHTML_URI = $(XSL_BASE_URI)/xhtml/docbook.xsl + +all: html tarball + +## +# These URI should be rewritten by your distribution's xml catalog to +# match your localy installed XSL stylesheets. + +html: +#       See http://www.sagehill.net/docbookxsl/HtmlOutput.html  + +#	xsltproc $(XSLTOPTS) -o yocto-project-qs.html $(XSL_XHTML_URI) yocto-project-qs.xml +	xsltproc $(XSLTOPTS) -o yocto-project-qs.html yocto-project-qs-customization.xsl yocto-project-qs.xml + +tarball: html +	tar -cvzf yocto-project-qs.tgz yocto-project-qs.html style.css figures/yocto-environment.png figures/building-an-image.png figures/using-a-pre-built-image.png figures/yocto-project-transp.png + +validate: +	xmllint --postvalid --xinclude --noout yocto-project-qs.xml + +OUTPUTS = yocto-project-qs.tgz yocto-project-qs.html +SOURCES = *.png *.xml *.css + +publish: +	scp -r $(OUTPUTS) $(SOURCES) o-hand.com:/srv/www/pokylinux.org/doc/ + +clean: +	rm -f $(OUTPUTS) diff --git a/documentation/yocto-project-qs/figures/building-an-image.png b/documentation/yocto-project-qs/figures/building-an-image.pngBinary files differ new file mode 100755 index 0000000000..eb0ee07a4c --- /dev/null +++ b/documentation/yocto-project-qs/figures/building-an-image.png diff --git a/documentation/yocto-project-qs/figures/cropped-yocto-project-bw.png b/documentation/yocto-project-qs/figures/cropped-yocto-project-bw.pngBinary files differ new file mode 100755 index 0000000000..561333b146 --- /dev/null +++ b/documentation/yocto-project-qs/figures/cropped-yocto-project-bw.png diff --git a/documentation/yocto-project-qs/figures/using-a-pre-built-image.png b/documentation/yocto-project-qs/figures/using-a-pre-built-image.pngBinary files differ new file mode 100755 index 0000000000..2e8f295ad6 --- /dev/null +++ b/documentation/yocto-project-qs/figures/using-a-pre-built-image.png diff --git a/documentation/yocto-project-qs/figures/white-on-black.png b/documentation/yocto-project-qs/figures/white-on-black.pngBinary files differ new file mode 100755 index 0000000000..075b4f2949 --- /dev/null +++ b/documentation/yocto-project-qs/figures/white-on-black.png diff --git a/documentation/yocto-project-qs/figures/yocto-environment.png b/documentation/yocto-project-qs/figures/yocto-environment.pngBinary files differ new file mode 100755 index 0000000000..a3bf23e9c4 --- /dev/null +++ b/documentation/yocto-project-qs/figures/yocto-environment.png diff --git a/documentation/yocto-project-qs/figures/yocto-project-transp.png b/documentation/yocto-project-qs/figures/yocto-project-transp.pngBinary files differ new file mode 100755 index 0000000000..31d2b147fd --- /dev/null +++ b/documentation/yocto-project-qs/figures/yocto-project-transp.png diff --git a/documentation/yocto-project-qs/style.css b/documentation/yocto-project-qs/style.css new file mode 100644 index 0000000000..2abfa7b5bb --- /dev/null +++ b/documentation/yocto-project-qs/style.css @@ -0,0 +1,963 @@ +/*  +   Generic XHTML / DocBook XHTML CSS Stylesheet. +    +   Browser wrangling and typographic design by +      Oyvind Kolas / pippin@gimp.org + +   Customised for Poky by +      Matthew Allum / mallum@o-hand.com + +   Thanks to: +     Liam R. E. Quin +     William Skaggs +     Jakub Steiner + +   Structure +   --------- + +   The stylesheet is divided into the following sections: + +       Positioning +          Margins, paddings, width, font-size, clearing. +       Decorations +          Borders, style +       Colors +          Colors +       Graphics +          Graphical backgrounds +       Nasty IE tweaks +          Workarounds needed to make it work in internet explorer, +          currently makes the stylesheet non validating, but up until +          this point it is validating. +       Mozilla extensions +          Transparency for footer +	  Rounded corners on boxes + +*/ + + +  /*************** / + /  Positioning   / +/ ***************/ + +body { +  font-family: Verdana, Sans, sans-serif; +  +  min-width: 640px; +  width: 80%; +  margin:  0em auto; +  padding: 2em 5em 5em 5em; +  color: #333; +} + +h1,h2,h3,h4,h5,h6,h7 { +  font-family: Arial, Sans; +  color:#999999; +  clear: both; +} + +h1 { +  font-size: 2em; +  text-align: left; +  padding: 0em 0em 0em 0em; +  margin: 2em 0em 0em 0em; +} + +h2.subtitle { +  margin: 0.10em 0em 3.0em 0em; +  padding: 0em 0em 0em 0em; +  font-size: 1.8em; +  padding-left: 20%; +  font-weight: normal; +  font-style: italic; +} + +h2 { +  margin: 2em 0em 0.66em 0em; +  padding: 0.5em 0em 0em 0em; +  font-size: 1.5em; +  font-weight: normal; +} + +h3.subtitle { +  margin: 0em 0em 1em 0em; +  padding: 0em 0em 0em 0em; +  font-size: 142.14%; +  text-align: right; +} + +h3 { +  margin: 1em 0em 0.5em 0em; +  padding: 1em 0em 0em 0em; +  font-size: 140%; +  font-weight: normal; +} + +h4 { +  margin: 1em 0em 0.5em 0em; +  padding: 1em 0em 0em 0em; +  font-size: 120%; +  font-weight: normal; +} + +h5 { +  margin: 1em 0em 0.5em 0em; +  padding: 1em 0em 0em 0em; +  font-size: 110.000%; +  border-bottom: 1px solid black; +} + +h6 { +  margin: 1em 0em 0em 0em; +  padding: 1em 0em 0em 0em; +  font-size: 80%; +  font-weight: normal; +} + +.authorgroup { +  background-color: transparent; +  background-repeat: no-repeat; +  padding-top: 256px; +  background-image: url("../figures/yocto-project-bw.png"); +  background-position: top; +  margin-top: -256px; +  padding-right: 50px; +  margin-left: 50px; +  text-align: center; +  width: 600px; +} + +h3.author { +  margin: 0em 0me 0em 0em; +  padding: 0em 0em 0em 0em; +  font-weight: normal; +  font-size: 100%; +  clear: both; +} + +.author tt.email { +  font-size: 66%; +} + +.titlepage hr { +  width: 0em; +  clear: both; +} + +.revhistory { +  padding-top: 2em; +  clear: both; +} + +.toc, +.list-of-tables, +.list-of-examples, +.list-of-figures { +  padding: 1.33em 0em 2.5em 0em; +} + +.toc p, +.list-of-tables p, +.list-of-figures p, +.list-of-examples p { +  padding: 0em 0em 0em 0em; +  padding: 0em 0em 0.3em; +  margin: 1.5em 0em 0em 0em; +} + +.toc p b, +.list-of-tables p b, +.list-of-figures p b, +.list-of-examples p b{ +  font-size: 100.0%; +  font-weight: bold; +} + +.toc dl, +.list-of-tables dl, +.list-of-figures dl, +.list-of-examples dl { +  margin: 0em 0em 0.5em 0em; +  padding: 0em 0em 0em 0em; +} + +.toc dt { +  margin: 0em 0em 0em 0em; +  padding: 0em 0em 0em 0em; +} + +.toc dd { +  margin: 0em 0em 0em 2.6em; +  padding: 0em 0em 0em 0em; +} + +div.glossary dl, +div.variablelist dl { +} + +.glossary dl dt, +.variablelist dl dt, +.variablelist dl dt span.term { +  font-weight: normal; +  width: 20em; +  text-align: right; +} + +.variablelist dl dt { +  margin-top: 0.5em; +} + +.glossary dl dd, +.variablelist dl dd { +  margin-top: -1em; +  margin-left: 25.5em; +} + +.glossary dd p, +.variablelist dd p { +  margin-top: 0em; +  margin-bottom: 1em; +} + + +div.calloutlist table td { +  padding: 0em 0em 0em 0em; +  margin: 0em 0em 0em 0em; +} + +div.calloutlist table td p { +  margin-top: 0em; +  margin-bottom: 1em; +} + +div p.copyright { +  text-align: left; +} + +div.legalnotice p.legalnotice-title { +  margin-bottom: 0em; +} + +p { +  line-height: 1.5em; +  margin-top: 0em; +  color: black; font-size: 100%; +   +} + +dl { +  padding-top: 0em; +} + +hr { +  border: solid 1px; +} + + +.mediaobject, +.mediaobjectco { +  text-align: center; +} + +img { +  border: none; +} + +ul { +  padding: 0em 0em 0em 1.5em; +} + +ul li { +  padding: 0em 0em 0em 0em; +} + +ul li p { +  text-align: left; +} + +table { +  width :100%; +} + +th { +  padding: 0.25em; +  text-align: left; +  font-weight: normal; +  vertical-align: top; +} + +td { +  padding: 0.25em; +  vertical-align: top; +} + +p a[id] { +  margin: 0px; +  padding: 0px; +  display: inline; +  background-image: none; +}  + +a { +  text-decoration: underline; +  color: #444; +} + +pre { +    overflow: auto; +} + +a:hover { +  text-decoration: underline; +  /*font-weight: bold;*/ +} + + +div.informalfigure, +div.informalexample, +div.informaltable, +div.figure, +div.table, +div.example { +  margin: 1em 0em; +  padding: 1em; +  page-break-inside: avoid; +} + + +div.informalfigure p.title b, +div.informalexample p.title b, +div.informaltable p.title b, +div.figure p.title b, +div.example p.title b, +div.table p.title b{ +    padding-top: 0em; +    margin-top: 0em; +    font-size: 100%; +    font-weight: normal; +} + +.mediaobject .caption,  +.mediaobject .caption p  { +  text-align: center; +  font-size: 80%;   +  padding-top: 0.5em; +  padding-bottom: 0.5em; +} + +.epigraph { +  padding-left: 55%; +  margin-bottom: 1em; +} + +.epigraph p { +  text-align: left; +} + +.epigraph .quote { +  font-style: italic; +} +.epigraph .attribution { +  font-style: normal; +  text-align: right; +} + +span.application { +  font-style: italic; +} + +.programlisting { +  font-family: monospace; +  font-size: 80%; +  white-space: pre; +  margin: 1.33em 0em; +  padding: 1.33em; +} + +.tip, +.warning, +.caution, +.note { +  margin-top: 1em; +  margin-bottom: 1em; + +} + +/* force full width of table within div */ +.tip table, +.warning table, +.caution table, +.note table { +  border: none; +  width: 100%; +} + + +.tip table th, +.warning table th, +.caution table th, +.note table th { +  padding: 0.8em 0.0em 0.0em 0.0em; +  margin : 0em 0em 0em 0em; +} + +.tip p, +.warning p, +.caution p, +.note p { +  margin-top: 0.5em; +  margin-bottom: 0.5em; +  padding-right: 1em; +  text-align: left; +} + +.acronym { +  text-transform: uppercase; +} + +b.keycap, +.keycap { +  padding: 0.09em 0.3em; +  margin: 0em; +} + +.itemizedlist li { +  clear: none; +} + +.filename { +  font-size: medium; +  font-family: Courier, monospace; +} + + +div.navheader, div.heading{ +  position: absolute; +  left: 0em; +  top: 0em; +  width: 100%; +  background-color: #cdf; +  width: 100%; +} + +div.navfooter, div.footing{ +  position: fixed; +  left: 0em; +  bottom: 0em; +  background-color: #eee; +  width: 100%; +} + + +div.navheader td, +div.navfooter td { +  font-size: 66%; +} + +div.navheader table th { +  /*font-family: Georgia, Times, serif;*/ +  /*font-size: x-large;*/ +  font-size: 80%; +} + +div.navheader table { +  border-left: 0em; +  border-right: 0em; +  border-top: 0em; +  width: 100%; +} + +div.navfooter table { +  border-left: 0em; +  border-right: 0em; +  border-bottom: 0em; +  width: 100%; +} + +div.navheader table td a, +div.navfooter table td a { +  color: #777; +  text-decoration: none; +} + +/* normal text in the footer */ +div.navfooter table td { +  color: black; +} + +div.navheader table td a:visited, +div.navfooter table td a:visited { +  color: #444; +} + + +/* links in header and footer */ +div.navheader table td a:hover, +div.navfooter table td a:hover { +  text-decoration: underline; +  background-color: transparent; +  color: #33a; +} + +div.navheader hr, +div.navfooter hr { +  display: none; +} + + +.qandaset tr.question td p { +  margin: 0em 0em 1em 0em; +  padding: 0em 0em 0em 0em; +} + +.qandaset tr.answer td p { +  margin: 0em 0em 1em 0em; +  padding: 0em 0em 0em 0em; +} +.answer td { +  padding-bottom: 1.5em; +} + +.emphasis { +  font-weight: bold; +} + + +  /************* / + / decorations  / +/ *************/ + +.titlepage { +} + +.part .title { +} + +.subtitle { +    border: none; +} + +/* +h1 { +  border: none; +} + +h2 { +  border-top: solid 0.2em; +  border-bottom: solid 0.06em; +} + +h3 { +  border-top: 0em; +  border-bottom: solid 0.06em; +} + +h4 { +  border: 0em; +  border-bottom: solid 0.06em; +} + +h5 { +  border: 0em; +} +*/ + +.programlisting { +  border: solid 1px; +} + +div.figure, +div.table, +div.informalfigure, +div.informaltable, +div.informalexample, +div.example { +  border: 1px solid; +} + + + +.tip, +.warning, +.caution, +.note { +  border: 1px solid; +} + +.tip table th, +.warning table th, +.caution table th, +.note table th { +  border-bottom: 1px solid; +} + +.question td { +  border-top: 1px solid black; +} + +.answer { +} + + +b.keycap, +.keycap { +  border: 1px solid; +} +   + +div.navheader, div.heading{ +  border-bottom: 1px solid; +} + + +div.navfooter, div.footing{ +  border-top: 1px solid; +} + +  /********* / + /  colors  / +/ *********/ + +body { +  color: #333; +  background: white; +} + +a { +  background: transparent; +} + +a:hover { +  background-color: #dedede; +} + + +h1, +h2, +h3, +h4, +h5, +h6, +h7, +h8 { +  background-color: transparent; +} + +hr { +  border-color: #aaa; +} + + +.tip, .warning, .caution, .note { +  border-color: #aaa; +} + + +.tip table th, +.warning table th, +.caution table th, +.note table th { +  border-bottom-color: #aaa; +} + + +.warning { +  background-color: #fea; +} + +.caution { +  background-color: #fea; +} + +.tip { +  background-color: #eff; +} + +.note { +  background-color: #dfc; +} + +.glossary dl dt,  +.variablelist dl dt, +.variablelist dl dt span.term { +  color: #044; +} + +div.figure, +div.table, +div.example, +div.informalfigure, +div.informaltable, +div.informalexample { +  border-color: #aaa; +} + +pre.programlisting { +  color: black; +  background-color: #fff; +  border-color: #aaa; +  border-width: 2px; +} + +.guimenu, +.guilabel, +.guimenuitem { +  background-color: #eee; +} + + +b.keycap, +.keycap { +  background-color: #eee; +  border-color: #999; +} + + +div.navheader { +  border-color: black; +} + + +div.navfooter { +  border-color: black; +} + + +  /*********** / + /  graphics  / +/ ***********/ + +/* +body { +  background-image: url("images/body_bg.jpg"); +  background-attachment: fixed; +} + +.navheader, +.note, +.tip { +  background-image: url("images/note_bg.jpg"); +  background-attachment: fixed; +} + +.warning, +.caution { +  background-image: url("images/warning_bg.jpg"); +  background-attachment: fixed; +} + +.figure, +.informalfigure, +.example, +.informalexample, +.table, +.informaltable { +  background-image: url("images/figure_bg.jpg"); +  background-attachment: fixed; +} + +*/ +h1, +h2, +h3, +h4, +h5, +h6, +h7{ +} + +/* +Example of how to stick an image as part of the title. + +div.article .titlepage .title +{ +  background-image: url("figures/white-on-black.png"); +  background-position: center; +  background-repeat: repeat-x; +} +*/ + +div.preface .titlepage .title,  +div.colophon .title,  +div.chapter .titlepage .title, +div.article .titlepage .title  +{ +} + +div.section div.section .titlepage .title, +div.sect2 .titlepage .title { +    background: none; +} + + +h1.title { +  background-color: transparent; +  background-image: url("figures/yocto-project-bw.png"); +  background-repeat: no-repeat; +  height: 256px; +  text-indent: -9000px; +  overflow:hidden; +} + +h2.subtitle { +  background-color: transparent; +  text-indent: -9000px; +  overflow:hidden; +  width: 0px; +  display: none; +} + +  /*************************************** / + /  pippin.gimp.org specific alterations  / +/ ***************************************/ + +/* +div.heading, div.navheader { +  color: #777; +  font-size: 80%; +  padding: 0; +  margin: 0; +  text-align: left; +  position: absolute; +  top: 0px; +  left: 0px; +  width: 100%; +  height: 50px; +  background: url('/gfx/heading_bg.png') transparent; +  background-repeat: repeat-x; +  background-attachment: fixed; +  border: none; +} + +div.heading a { +  color: #444; +} + +div.footing, div.navfooter { +  border: none; +  color: #ddd; +  font-size: 80%; +  text-align:right; + +  width: 100%; +  padding-top: 10px; +  position: absolute; +  bottom: 0px; +  left: 0px; + +  background: url('/gfx/footing_bg.png') transparent; +} +*/ + + + +  /****************** / + /  nasty ie tweaks  / +/ ******************/ + +/* +div.heading, div.navheader { +  width:expression(document.body.clientWidth + "px"); +} + +div.footing, div.navfooter { +  width:expression(document.body.clientWidth + "px"); +  margin-left:expression("-5em"); +} +body { +  padding:expression("4em 5em 0em 5em"); +} +*/ + +  /**************************************** / + / mozilla vendor specific css extensions  / +/ ****************************************/ +/* +div.navfooter, div.footing{ +  -moz-opacity: 0.8em; +} + +div.figure, +div.table, +div.informalfigure, +div.informaltable, +div.informalexample, +div.example, +.tip, +.warning, +.caution, +.note { +  -moz-border-radius: 0.5em; +} + +b.keycap, +.keycap { +  -moz-border-radius: 0.3em; +} +*/ + +table tr td table tr td { +  display: none; +} + + +hr { +  display: none; +} + +table { +  border: 0em; +} + + .photo { +  float: right; +  margin-left:   1.5em; +  margin-bottom: 1.5em; +  margin-top: 0em; +  max-width:      17em; +  border:     1px solid gray; +  padding:    3px; +  background: white; +} + .seperator { +   padding-top: 2em; +   clear: both; +  } + +  #validators { +      margin-top: 5em; +      text-align: right; +      color: #777; +  } +  @media print { +      body { +          font-size: 8pt; +      } +      .noprint { +          display: none; +      } +  } + + +.tip, +.note { +   background: #91ae35; +   color: #fff;    +   padding: 20px; +   margin: 20px; +} + +.tip h3, +.note h3 { +   padding: 0em; +   margin: 0em; +   font-size: 2em; +   font-weight: bold; +   color: #fff;    +} + +.tip a, +.note a { +   color: #fff;    +   text-decoration: underline; +} diff --git a/documentation/yocto-project-qs/yocto-project-qs-customization.xsl b/documentation/yocto-project-qs/yocto-project-qs-customization.xsl new file mode 100644 index 0000000000..8e6ea34dd4 --- /dev/null +++ b/documentation/yocto-project-qs/yocto-project-qs-customization.xsl @@ -0,0 +1,8 @@ +<?xml version='1.0'?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://www.w3.org/1999/xhtml" xmlns:fo="http://www.w3.org/1999/XSL/Format" version="1.0"> +   +  <xsl:import href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl" /> + +  <xsl:param name="generate.toc" select="'article nop'"></xsl:param> + +</xsl:stylesheet> diff --git a/documentation/yocto-project-qs/yocto-project-qs.xml b/documentation/yocto-project-qs/yocto-project-qs.xml new file mode 100644 index 0000000000..d67ff41edc --- /dev/null +++ b/documentation/yocto-project-qs/yocto-project-qs.xml @@ -0,0 +1,307 @@ +<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" +"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> + +<article id='intro'> +   <imagedata fileref="figures/yocto-project-transp.png" width="6in" depth="1in" align="right" scale="25" /> + +<section id='fake-title'> +    <title>Yocto Project Quick Start</title> +</section> + +<section id='welcome'> +    <title>Welcome!</title> +    <para> +        Welcome to the Yocto Project!   +        The Yocto Project is an open-source Linux development environment.   +        This short document will give you some basic information about the environment as well as let you experience it in its simplest form.   +        After reading this document you will have a basic understanding of what the Yocto Project is and how to work within it.   +        This document also steps you through a simple example showing you how to build a small image and run it using the QEMU emulator. +    </para> +    <para> +        For complete information on the Yocto Project you should check out the <ulink url='http://www.yoctolinux.org'>Public Yocto Website</ulink>. +        You can find the latest builds, breaking news, full development documentation, and a rich Yocto Project Development Community into which you can tap. +    </para> +</section> + +<section id='yp-intro'> +    <title>Introducing the Yocto Project Development Environment</title> + +    <para> +        Yocto Project is an open source development environment that creates Linux-based images suitable for many types of devices (large or small) based on architectures such as x86, x86-64, Xeon, ARM, and MIPS as well as PowerPC and device emulation. +        You can use Yocto Project to design, develop, build, debug, simulate, and test the complete software stack using Linux, the X Window System, GNOME Mobile-based application frameworks, and Qt frameworks. +    </para> + +    <para></para> +    <para></para> + +    <mediaobject> +        <imageobject> +            <imagedata fileref="figures/yocto-environment.png" format="PNG" align='center' scalefit='1'/> +        </imageobject> +        <caption> +            <para>The Yocto Project Development Environment</para> +        </caption> +     </mediaobject> + +    <para> +        Yocto Project: +    </para> + +    <itemizedlist> +        <listitem> +            <para>Provides an open source Linux kernel along with a set of system commands and libraries suitable for the embedded environment.</para> +        </listitem> +        <listitem> +            <para>Makes available system components such as X11, Matchbox, GTK+, Pimlico, Clutter, and Qt (among others) so you can create a richer user interface experience on devices that use displays or have a GUI. +For devices that don't have a GUI or display you simply would not employ these components.</para> +        </listitem> +        <listitem> +            <para>Creates a focused and stable subset of OpenEmbedded on which you can easily and reliably build and develop.</para> +        </listitem> +        <listitem> +            <para>Fully supports a wide range of hardware and device emulation through the QEMU Emulator or other supported emulators.</para> +        </listitem> +    </itemizedlist> + +    <para> +        Yocto Project generates file system images based on open source software such as the Kdrive X server, the Matchbox Window Manager, the GTK+ Toolkit and the D-Bus Message Bus System.   +        Yocto Project can generate images for many kinds of devices.   +        However, the standard example machines target QEMU full system emulation for x86, ARM, MIPS, and PPC based architectures as well as specific hardware such as the Intel Desktop Board DH55TC.   +        Because an image developed with Yocto Project can boot inside a QEMU emulator, the development environment works nicely as a test platform for developing embedded software. +    </para> + +    <para> +        Another important Yocto Project feature is the Sato component.   +        The optional Sato component, a GNOME mobile-based user interface environment well suited for devices with restricted screen sizes, sits neatly on top of any device using the GNOME Mobile Stack providing a well defined user experience. +    </para> +</section> + +<section id='resources'> +    <title>What You Need and How You Get It</title> + +    <para> +        You need these things to develop in the Yocto Project environment: +    </para> + +    <itemizedlist> +        <listitem> +            <para>A host system running a supported Linux distribution.   +                For information on distributions on which you can use Yocto Project refer to the information found at <ulink url='http://wiki.openembedded.net/index.php/OEandYourDistro'>http://wiki.openembedded.net/index.php/OEandYourDistro</ulink>.</para> +        </listitem> +        <listitem> +            <para>The right packages.</para> +        </listitem> +        <listitem> +            <para>A release of Yocto Project.</para> +        </listitem> +    </itemizedlist> + +    <section id='the-linux-distro'> +        <title>The Linux Distribution</title> + +        <para> +            While this document assumes a Debian-based host system you can develop in the Yocto Linux environment using many other Linux distributions.    +            For Debian-based systems we recommend you use the Ubuntu Release 10.04 or later. +        </para> +    </section> + +    <section id='packages'> +        <title>The Packages</title> + +        <para> +            The packages you need for a Debian-based host are shown in the following command: +        </para> + +            <literallayout class='monospaced'> +     Sudo apt-get install sed wget cvs subversion git-core coreutils  +     unzip texi2html texinfo libsdll.2-dev docbook-utils gawk  +     python-pysqlite2 diffstat help2man make gcc build-essential  +     g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev  +     libsdl1.2-dev +            </literallayout> + +        <para> +            <emphasis>NOTE:</emphasis>  Packages vary in number and name for other Linux distributions.   +            For package requirements on other Linux distributions refer to the information found at <ulink url='http://wiki.openembedded.net/index.php/OEandYourDistro'>http://wiki.openembedded.net/index.php/OEandYourDistro</ulink>. +        </para> +    </section> + +    <section id='releases'> +        <title>Yocto Project Release</title> +             +        <para> +            The latest releases for Yocto Project are kept at http://yoctoproject.org/releases. +            Nightly and developmental builds are also maintained.  However, for this document a released version of Yocto Project is used. +        </para> +    </section> +</section> + +<section id='test-run'> +    <title>A Quick Test Run</title> + +    <para> +        Now that you have your system requirements in order you can give Yocto Project a try.   +        This section presents some steps that let you do the following: +    </para> + +    <itemizedlist> +        <listitem> +            <para>Build an image and run it in the emulator</para> +        </listitem> +        <listitem> +            <para>Or, use a pre-built image and run it in the emulator</para> +        </listitem> +    </itemizedlist> + +    <section id='building-image'> +        <title>Building an Image</title> +  +        <para> +            In the development environment you will need to build an image whenever you change hardware support, add or change system libraries, or add or change services that have dependencies. +        </para> + +        <mediaobject> +            <imageobject> +                <imagedata fileref="figures/building-an-image.png" format="PNG" align='center' scalefit='1'/> +            </imageobject> +            <caption> +                <para>Building an Image</para> +            </caption> +         </mediaobject> + +         <para> +             Use the following commands from a shell on your Debian-based host to build your image.   +             The build creates an entire Linux system including the Toolchain from the source. +         </para> + +         <para><emphasis>NOTE:</emphasis>  The build process using Sato currently consumes 50GB of disk space. +             To allow for vbariations in the build process and for future package expansion we recommend 100GB of free disk space. +         </para> + +         <para> +             <literallayout class='monospaced'> +     $ wget http://pokylinux.org/releases/poky-green-3.3.tar.bz2 +     $ tar xjvf poky-green-3.3.tar.bz2 +     $ cd green-3.3-build +     $ source green-3.3/poky-init-build-env green-3.3-build +     $ bitbake qemu-native +     $ bitbake poky-image-sato +     $ poky-qemu qemux86 +             </literallayout> +         </para> + +         <para> +             Here is some explanation for these commands: +         </para> + +         <itemizedlist> +             <listitem> +                 <para> +                     The first two commands extract the Yocto Project files from the release area and place them into your build area (green-3.3-build in this example). +                 </para> +             </listitem> +             <listitem> +                 <para> +                     After changing to the build directory the source command sets up the Yocto Project build environment.   +                     The build directory contains all the object files used during the build.    +                     The default build directory is poky-dir/build.   +                  </para> +             </listitem> +             <listitem> +                 <para> +                     The two bitbake commands build the OS image and the emulator for the target.   +                     Here poky-image-sato is the name of the target.  The qemu-native target is the customized QEMU Emulator.</para> +             </listitem> +             <listitem> +                 <para> +                     Finally, the poky-qemu command launches the customized QEMU. +                 </para> +             </listitem> +         </itemizedlist> +    </section> + +    <section id='using-pre-built'> +        <title>Using a Pre-Built Linux Kernel for QEMU</title> +        <para> +            If hardware, libraries and services are stable you can use a pre-built image of the kernel and just run it on the target using the emulator QEMU.   +            This situation is perfect for developing application software. +        </para> + +        <para></para> +        <para></para> +        <para></para> + +        <mediaobject> +            <imageobject> +            <imagedata fileref="figures/using-a-pre-built-image.png" format="PNG" align='center' scalefit='1'/> +            </imageobject> +            <caption> +                <para>Using a Pre-Built Image</para> +            </caption> +         </mediaobject> + +         <para> +             For this scenario you need to do three things: +         </para> + +         <itemizedlist> +             <listitem> +                 <para> +                     Install the Yocto Project Scripts +                 </para> +             </listitem> +             <listitem> +                 <para> +                     Download the pre-built kernel that will run on QEMU.   +                     You need to be sure to get the QEMU image that matches your target machine’s architecture (e.g. x86, ARM, etc.). +                 </para> +             </listitem> +             <listitem> +                 <para> +                     Download and decompress the file image system. +                 </para> +             </listitem> +         </itemizedlist> + +         <para> +             Use this command to install the patched Yocto Project QEMU scripts: +         </para> + +         <para> +             <literallayout class='monospaced'> +     $ apt-get install qemu poky-scripts +             </literallayout> +         </para> + +         <para> +             You can download the pre-built Linux kernel and the file image system from <ulink url='http://pokylinux.org/releases/blinky-3.0'></ulink>.   +             The kernel and file image system have the following forms, respectively: +         </para> + +          <literallayout class='monospaced'> +     *zImage*qemu*.bin +     poky-image-*-qemu*.ext2.bz2 +          </literallayout> + +         <para> +             You must decompress the file image system using the following command: +         </para> + +         <literallayout class='monospaced'> +     $ bzip2 -d +         </literallayout> + +         <para> +             You can now start the emulator using this command: +         </para> + +         <literallayout class='monospaced'> +     $ poky-qemu <<emphasis>kernel</emphasis>> <<emphasis>image</emphasis>> +         </literallayout> +    </section> +</section> + +</article> +<!-- +vim: expandtab tw=80 ts=4 +--> | 
