<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sinkko.org mediaräppänä &#187; openembedded</title>
	<atom:link href="http://systemshed.com/blogs/sinkko/tag/openembedded/feed/" rel="self" type="application/rss+xml" />
	<link>http://systemshed.com/blogs/sinkko</link>
	<description>Mediaperheen pää-äänenkannattaja</description>
	<lastBuildDate>Thu, 19 Aug 2010 18:09:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Sulautettua Linuxia, OpenEmbedded ja XScale/MontaVista Moxa-UC7420+</title>
		<link>http://systemshed.com/blogs/sinkko/2009/10/20/sulautettua-linuxia-openembedded-ja-xscalemontavista-moxa-uc7420/</link>
		<comments>http://systemshed.com/blogs/sinkko/2009/10/20/sulautettua-linuxia-openembedded-ja-xscalemontavista-moxa-uc7420/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 07:20:22 +0000</pubDate>
		<dc:creator>Kimmo</dc:creator>
				<category><![CDATA[Kimmo]]></category>
		<category><![CDATA[2.6.10]]></category>
		<category><![CDATA[arm]]></category>
		<category><![CDATA[armv5teb]]></category>
		<category><![CDATA[bitbake]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[configure]]></category>
		<category><![CDATA[cross-compile]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[distro]]></category>
		<category><![CDATA[embedded]]></category>
		<category><![CDATA[environment variable]]></category>
		<category><![CDATA[fc5]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[host]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[local.conf]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[makefile]]></category>
		<category><![CDATA[montavista]]></category>
		<category><![CDATA[moxa]]></category>
		<category><![CDATA[openembedded]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[pre-built]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[receipe]]></category>
		<category><![CDATA[samba]]></category>
		<category><![CDATA[sourcable]]></category>
		<category><![CDATA[target]]></category>
		<category><![CDATA[toolcain]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[xscale]]></category>

		<guid isPermaLink="false">http://systemshed.com/blogs/sinkko/?p=680</guid>
		<description><![CDATA[[See English summary in the end of this article]
Sulautetut Linux palvelimet ovat varsin kätevä tapa kehittää automaatiota teollisuudessa ja miksipä kotiautomaatiota ei voisi rakentaa myös samalle alustalle. Ainakin allekirjoittanut arvostaa suuresti jokaista kohdetta, missä herkästi vikaantuvat PC-pohjaiset integraatiokomponentit korvataan levyttömällä, virtalähteettömällä ja täysin passiivisesti jäähdytetyllä laitteella. MontaVista Linuxin luotettavuuskin on uskomatonta luokkaa. Uptimet vierähtävät helposti [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.moxa.com/Product/UC-7400.htm"><img class="left" title="moxa" src="http://systemshed.com/blogs/sinkko/wp-content/uploads/2009/10/moxa-150x150.jpg" alt="moxa" width="150" height="150" /></a><strong>[See English summary in the end of this article]</strong></p>
<p>Sulautetut Linux palvelimet ovat varsin kätevä tapa kehittää automaatiota teollisuudessa ja miksipä kotiautomaatiota ei voisi rakentaa myös samalle alustalle. Ainakin allekirjoittanut arvostaa suuresti jokaista kohdetta, missä herkästi vikaantuvat PC-pohjaiset integraatiokomponentit korvataan levyttömällä, virtalähteettömällä ja täysin passiivisesti jäähdytetyllä laitteella. <a title="MontaVista" href="http://www.mvista.com/" target="_blank">MontaVista</a> Linuxin luotettavuuskin on uskomatonta luokkaa. Uptimet vierähtävät helposti vuosiin.</p>
<p>Pohjalla on kuitenkin Linux, joten integrointi, valvonta ja hallittavuus ovat aiempia DOS-pohjaisia laitteita huomattavasti kehittyneempiä. <a title="Moxa" href="http://www.moxa.com/" target="_blank">Moxa</a>:n UC-74xx sarjan laitteet tulevat <a title="MontaVista" href="http://www.mvista.com/" target="_blank">MontaVistalla</a>, <a title="Busybox" href="http://www.busybox.net/" target="_blank">Busybox</a> komentopaketilla ja muutamilla olennaisilla valmiiksi asennetuilla ohjelmistoilla (kuten Apache2).</p>
<p>Ohjelmien lisääminen käy mukana tulevalla työkalupakilla (<a title="Moxa Toolchain" href="http://www.moxa.com/support/download.aspx?d_id=1374" target="_blank">Linux 2.6 Toolchain</a>), joka valitettavasti on kovin jälkijättöisesti päivitetty. Uusin versio on vuodelta 2007 ja alustaksi suositellaan Fedora FC5:ttä. Sitähän ei missään ole enää ollut olemassa aikoihin&#8230; Onneksi sellainen vielä löytyy, joten VMwaren päällä tuota voi sitten kehitysympäristössä ajaa.</p>
<p>Toinen mielenkiintoinen tapa kehittää (=kääntää) sovelluksia sulautetulle alustalle on <a title="OE" href="http://wiki.openembedded.net/index.php/Main_Page" target="_blank">OpenEmbedded</a> -projektin työkalupakki. Valitettavasti Moxa:lle ei sopivia konfiguraatioita löydy ja MontaVista ei ole toistaiseksi tuettujen jakeluiden listalla. Hyötyä tästä on kuitenkin sikäli, että tuota valmiiksi käännettyä Toolchain:ia voi käyttää OpenEmbedded:in kanssa (=kääntää valmiilla kääntäjällä ja kirjastoilla). Se mitä tästä hyötyy on <a title="Bitbake" href="http://bitbake.berlios.de" target="_blank">Bitbake</a>:n mainio cross-compile -kirjasto, jonka avulla saa tutut ohjelmistot todella helposti käännettyä MontaVistalle (esim. Python, Perl, Wget, Samba, Strace ,&#8230;)</p>
<p>Niiden ohjelmistojen kääntäminen, jotka Bitbake:n resepteistä löytyy, on todella helppoa (&#8220;bitbake perl&#8221;). Muiden ohjelmien tapauksessa helpoimmaksi osoittautui configure -skriptien parametrointi ja niiden generoimien Makefile tiedostojen muokkaus (useat ohjelmat eivät noudata configuren &#8211;build, &#8211;host ja &#8211;target määreitä vaikka ne ymmärtävätkin). Käytännössä skriptin generoimista Makefile -tiedostoista riittää CC määreen kääntäminen osoittamaan Toolchainin kääntäjään, sekä muiden vastaavien (esiprosessorin, stripin jne.) korjailu. Oma haasteensa ovat ohjelmat, jotka viittaavat toisiin kirjastoihin, koska joudut kääntämään myös ne erikseen (esim. libneonxml, ncurses, termcap, &#8230;).</p>
<p>OpenEmbedded:in käyttöönvaljastaminen ei ollut kaikkein selkein prosessi, joten<a title="Installing OpenEmbedded" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/" target="_blank"> katso täältä ohjeita</a>. Läpi käydään ainakin ympäristömuuttujat sekä <a title="local.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/" target="_self">local.conf </a>joka pistää Bitbaken käyttämään Moxan omaa Toolchain:iä (sekä esitellään <a title="empty.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/" target="_self">nerokkaat tyhjät MACHINE ja DISTRO konfiguraatiotiedostot</a>). Toivottavasti näistä ohjeista on hyötyä &#8211; itse käytin yhden sunnuntain sählätessäni näiden kanssa, asia kun ei ollut tuttua <img src='http://systemshed.com/blogs/sinkko/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong><em>English summary</em>: </strong>Embedded Linux computers are a great thing for industrial automation builders, not forgetting the home automation. Building software for embedded distributions can be tricky though and there <a title="OE" href="http://wiki.openembedded.net/index.php/Main_Page" target="_blank">OpenEmbedded project </a>comes to help. <a title="OE installing" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/" target="_self">The article provides pointers </a>to setup OpenEmbedded with <a title="Moxa Toolchain" href="http://www.moxa.com/support/download.aspx?d_id=1374" target="_blank">pre-built toolchain </a>for Moxa-UC7420+ embedded computer. <a title="Bitbake" href="http://bitbake.berlios.de" target="_blank">Bitbake</a> provides great collection of cross-compile recipes for the most popular tools for system design like Python, Perl, Samba and so on. See the <a title="OE installation" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/" target="_self">installation article </a>and examples for setting up OpenEmbedded and Bitbake as well as example envs script for setting the <a title="Envs" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-envs/" target="_self">compile environment</a> and <a title="Bitbake local.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-local-conf/" target="_self">local.conf </a>for deploying pre-build toolchain. Also genious <a title="empty.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/" target="_self">empty MACHINE and DISTRO config files </a>need to be setup.</p>
<p>If OpenEmbedded does not carry a receipe for your most wanted app, you can allways cross-compile it with the Toolchain from the source. Please note, that many configure -scripts do accept &#8211;build, &#8211;target and &#8211;host parameters but never actually use them. So you need to manually fix the automatically generated Makefiles. Usually pointing CC to Toolchain gcc, ar, strip and other friends is enough. Remember to cross-compile the referenced libraries too!</p>
<p>The most annoying feature with Moxa is the pretty old Toolchain package, which is made for Fedora FC5. That has been unsupported for some time now, so prepare yourself for some serious tuning with some other 2.6.10 linux kernel distro. I managed to find an old installation CD set, that allowed me to run FC5 in VMware.</p>
]]></content:encoded>
			<wfw:commentRss>http://systemshed.com/blogs/sinkko/2009/10/20/sulautettua-linuxia-openembedded-ja-xscalemontavista-moxa-uc7420/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenEmbedded &#8211; Asentaminen</title>
		<link>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/</link>
		<comments>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 07:19:52 +0000</pubDate>
		<dc:creator>Kimmo</dc:creator>
				<category><![CDATA[Kimmo]]></category>
		<category><![CDATA[bitbake]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[distro]]></category>
		<category><![CDATA[installing]]></category>
		<category><![CDATA[installing bitbake]]></category>
		<category><![CDATA[installing openembedded]]></category>
		<category><![CDATA[local.conf]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[openembedded]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[strip]]></category>
		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://systemshed.com/blogs/sinkko/?p=694</guid>
		<description><![CDATA[Asenna Moxa Toolchain 2.6.10 kernelille. Lataa täältä. Oletetaan esimerkin vuoksi, että asensit oletuspaikkaan /usr/local/xscale_be.
Asenna uusi Python, vähintään 2.5, mutta 2.6.3 toimii hyvin. Tarvitaan täysi development versio. Lataa täältä.
Asenna Psyco JIT kääntäjä Pythonille. Ilman tätä Bitbake tulee olemaan todella hidas. Lataa täältä.
Tulevien ohjelmistojen asennuspaikan pitää olla sellainen, jonka yläpuolella ei tiedostojärjestelmässä ole yhtään symbolista linkkiä. Valitse [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://wiki.openembedded.net/index.php/Main_Page"><img class="left" title="oe-logo" src="http://systemshed.com/blogs/sinkko/wp-content/uploads/2009/10/oe-logo-150x150.png" alt="oe-logo" width="150" height="150" /></a>Asenna Moxa Toolchain 2.6.10 kernelille. <a title="Moxa Toolchain" href="http://www.moxa.com/support/download.aspx?d_id=1374" target="_blank">Lataa täältä</a>. Oletetaan esimerkin vuoksi, että asensit oletuspaikkaan /usr/local/xscale_be.</p>
<p>Asenna uusi Python, vähintään 2.5, mutta 2.6.3 toimii hyvin. Tarvitaan täysi development versio. <a title="Python" href="http://www.python.org/" target="_blank">Lataa täältä</a>.</p>
<p>Asenna Psyco JIT kääntäjä Pythonille. Ilman tätä Bitbake tulee olemaan todella hidas. <a title="Psyco" href="http://psyco.sourceforge.net/" target="_blank">Lataa täältä</a>.</p>
<p>Tulevien ohjelmistojen asennuspaikan pitää olla sellainen, jonka <em>yläpuolella ei tiedostojärjestelmässä ole yhtään symbolista linkkiä</em>. Valitse sopiva paikka, kutsutaan sitä Työhakemistoksi. Esimerkissä /opt/oe.</p>
<p>Luo Työhakemistoon hakemisto build. Luo build hakemistoon hakemisto conf.</p>
<p>Luo Työhakemistoon hakemistot downloads sekä tmp.</p>
<p>Asenna Bitbake. <a title="Bitbake Download" href="http://developer.berlios.de/projects/bitbake/" target="_blank">Lataa täältä</a>. Asenna Työhakemistoon (hakemistoon &#8220;bitbake&#8221;).</p>
<p>Asenna OpenEmbedded. <a title="OE install" href="http://wiki.openembedded.net/index.php/Getting_started#Setting_up_the_toolchain_and_doing_a_build" target="_blank">Katso täältä ohje</a>. Tarvitset <a title="Git" href="http://git-scm.com/" target="_blank">git</a>:in. Asenna Työhakemistoon (hakemistoon &#8220;openembedded&#8221;).</p>
<p>Aseta ympäristömuuttujat tiedostoon, jonka lataat kätevimmin sourcella (&#8220;source envs &#8220;). Esimerkki tiedostosta envs <a title="Envs" href=" http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-envs/" target="_self">täällä</a>.</p>
<p>Luo Työhakemisto/build/conf hakemistoon tiedosto <a title="local.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-local-conf/" target="_self">local.conf</a>, jolla Bitbake kesytetään.</p>
<p>Luo Työhakemisto/openembedded/conf/machine hakemistoon tiedosto <a title="empty.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/ " target="_self">empty.conf</a>.</p>
<p>Luo Työhakemisto/openembedded/conf/distro hakemistoon tiedosto <a title="empty.conf" href="http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/ " target="_self">empty.conf</a>.</p>
<p>Luo käännettyjen ohjelmistojen löytämisen helpottamiseksi symbolinen linkki deploy -&gt; tmp/work/arm-none-linux.</p>
<p><strong>Vinkki 1:</strong> Siirrä kaikki turhat &#8220;reseptit&#8221; (eli hakemistot openembedded/recipes hakemistosta) piiloon, jotta jokaisella Bitbake:n ajokerralla ei tarvitse käydä niitä läpi (7533 kpl). Ota vain tarvitsemasi. Se mitä tarvitset selviää riippuvuuksina sitä mukaa kun yrität luoda haluamiasi paiketteja.</p>
<p><strong>Vinkki 2:</strong> Jotkut kehnot reseptit eivät tottele noita asetustiedostoja (vika varmaan asetustiedostoissa, en epäile) ja haluavat kääntää välillä gcc:llä nimeltä &#8220;arm-none-linux-gcc&#8221;. Homma ratkeaa likaisesti niin, että teet symbolisen linkin /usr/bin/arm-none-linux-gcc, joka osoittaa Toolchainin gcc:hen.</p>
<p>Jos olet tähän asti toiminut root:ina, vaihda normaalikäyttäjäksi. Luo sopiva ryhmä, johon käyttäjä kuuluu. Korjaa hakemistoille em. ryhmä omistajaksi ja anna ryhmälle kirjoitusoikeus.</p>
<p>Jos kaikki on valmista ja homma toimii, niin siirrä recipes -hakemistoon helloworld hakemisto ja kokeile &#8220;bitbake helloworld&#8221;. Tämän pitäisi kääntää XScale alustalle em. ohjelman. Käännetty versio löytyy deploy -linkin takaa.</p>
<p><strong>Vinkki 3:</strong> Kaikki reseptit eivät aja binaareille strippiä, joten käännetyt ohjelmat ovat hurjan kokoisia. Aja strip käsin ennen kuin siirrät binaarit Moxaan (Esim. &#8220;/usr/local/xscale_be/armv5teb-montavista-linuxeabi/bin/strip helloworld&#8221;)</p>
]]></content:encoded>
			<wfw:commentRss>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-asentaminen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenEmbedded &#8211; empty.conf</title>
		<link>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/</link>
		<comments>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 07:19:29 +0000</pubDate>
		<dc:creator>Kimmo</dc:creator>
				<category><![CDATA[Kimmo]]></category>
		<category><![CDATA[distro]]></category>
		<category><![CDATA[empty.conf]]></category>
		<category><![CDATA[machine]]></category>
		<category><![CDATA[openembedded]]></category>

		<guid isPermaLink="false">http://systemshed.com/blogs/sinkko/?p=721</guid>
		<description><![CDATA[Tiedosto: Esimerkiksi /opt/oe/openembedded/conf/machine/empty.conf
#@TYPE: Machine
#@NAME: Moxa (big-endian)
#@DESCRIPTION: Machine configuration for an UC-7420+ in big-endian mode (Moxa)
Tiedosto: Esimerkiksi /opt/oe/openembedded/conf/distro/empty.conf
DISTRO_NAME ?= &#8220;empty&#8221;
DISTRO_VERSION = &#8220;.dev-snapshot-${SRCDATE}&#8221;
DISTRO_TYPE ?= &#8220;debug&#8221;
]]></description>
			<content:encoded><![CDATA[<p><strong>Tiedosto: Esimerkiksi /opt/oe/openembedded/conf/machine/empty.conf</strong></p>
<p>#@TYPE: Machine<br />
#@NAME: Moxa (big-endian)<br />
#@DESCRIPTION: Machine configuration for an UC-7420+ in big-endian mode (Moxa)</p>
<p><strong>Tiedosto: Esimerkiksi /opt/oe/openembedded/conf/distro/empty.conf</strong></p>
<p>DISTRO_NAME ?= &#8220;empty&#8221;<br />
DISTRO_VERSION = &#8220;.dev-snapshot-${SRCDATE}&#8221;<br />
DISTRO_TYPE ?= &#8220;debug&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://systemshed.com/blogs/sinkko/2009/10/20/openembedded-empty-conf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
