<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://elinux.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://elinux.org/index.php?title=GeeXboX&amp;feed=atom&amp;action=history</id>
		<title>GeeXboX - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://elinux.org/index.php?title=GeeXboX&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=GeeXboX&amp;action=history"/>
		<updated>2013-05-22T10:04:00Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.21alpha</generator>

	<entry>
		<id>http://elinux.org/index.php?title=GeeXboX&amp;diff=23263&amp;oldid=prev</id>
		<title>Davide: /* Building Sources */ update for make menuconfig</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=GeeXboX&amp;diff=23263&amp;oldid=prev"/>
				<updated>2010-09-16T08:53:08Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Building Sources: &lt;/span&gt; update for make menuconfig&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr style='vertical-align: top;'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 08:53, 16 September 2010&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 49:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 49:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Building Sources==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;==Building Sources==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Next, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;enter to ''&lt;/del&gt;geexbox&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;'' directory and edit with your preferred editor the ''config/options'' file&lt;/del&gt;. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Set&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Next, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;configure &lt;/ins&gt;geexbox &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;for omap3 based architecture&lt;/ins&gt;. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Run&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; TARGET_ARCH=arm&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; $ make menuconfig&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; TARGET_CPU=cortex-a8&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; SERVICES=yes&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;and set&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; XORG_DRIVERS=&amp;quot;omapfb&amp;quot;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; PULSEAUDIO=no&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; General Setup -&amp;gt; Target architecture (arm)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; GSTREAMER=yes&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  -&amp;gt; Target sub-architecture (ARMv7 / Cortex)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; DEVTOOLS=yes&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  -&amp;gt; Target platform (OMAP3)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;  -&amp;gt; Target CPU (cortex-a8)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Finally build the distribution with&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Finally build the distribution with&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;# &lt;/del&gt;make flat&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;#160;&amp;#160; &amp;#160; &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;$ &lt;/ins&gt;make flat&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The result will be in geexbox-flat-devel-*.arm.eglibc directory&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The result will be in geexbox-flat-devel-*.arm.eglibc directory&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key elinux:diff:version:1.11a:oldid:21806:newid:23263 --&gt;
&lt;/table&gt;</summary>
		<author><name>Davide</name></author>	</entry>

	<entry>
		<id>http://elinux.org/index.php?title=GeeXboX&amp;diff=21806&amp;oldid=prev</id>
		<title>Gxben: Created page with '==Introduction==  [http://www.geexbox.org/ GeeXboX] is a embedded Linux distribution focused on multimedia and video playback. It is available for regular x86-based and PowerPC-b…'</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=GeeXboX&amp;diff=21806&amp;oldid=prev"/>
				<updated>2010-06-14T19:06:45Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;==Introduction==  [http://www.geexbox.org/ GeeXboX] is a embedded Linux distribution focused on multimedia and video playback. It is available for regular x86-based and PowerPC-b…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Introduction==&lt;br /&gt;
&lt;br /&gt;
[http://www.geexbox.org/ GeeXboX] is a embedded Linux distribution focused on multimedia and video playback. It is available for regular x86-based and PowerPC-based computers and ARM embedded devices. GeeXboX comes with its own multi-architectures toolchain and cross-compilation engine. It is fully customizable and provides 400+ multimedia packages. It relies on a state-of-the-art embedded Linux system: BusyBox, uClibc/Glibc/eGlibc, and media players such as MPlayer, Xine or Gstreamer. It can be configured to run with or without X Windowing system. Its frontend Media Center application is called [http://enna.geexbox.org/ Enna]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
&lt;br /&gt;
* [http://www.geexbox.org/ GeeXboX]: the embedded Linux multimedia distribution&lt;br /&gt;
* [http://enna.geexbox.org/ Enna]: Enlightenment EFL-based Media Center application&lt;br /&gt;
* [http://libplayer.geexbox.org/ libplayer]: a multimedia A/V abstraction layer API, capable of driving MPlayer, Xine, VLC and GStreamer.&lt;br /&gt;
* [http://libvalhalla.geexbox.org/ libvalhalla]: a media scanning library to retrieve various metadata such as ID3tags, covers, lyrics, informations on media files and so on.&lt;br /&gt;
&lt;br /&gt;
==ARM Supported Hardware==&lt;br /&gt;
&lt;br /&gt;
GeeXboX has its own toolchain and can be configured for endless configuration and ARM chips.&lt;br /&gt;
By default, it generates ARMv7 compatible code, with Cortex-A8 and NEON optimizations.&lt;br /&gt;
&lt;br /&gt;
It currently fully support OMAP3-based boards, including (out-of-the-box):&lt;br /&gt;
&lt;br /&gt;
* [http://beagleboard.org/ BeagleBoard]&lt;br /&gt;
* [http://www.igep-platform.com/index.php?option=com_content&amp;amp;view=article&amp;amp;id=46&amp;amp;Itemid=55 IGEPv2 Board]&lt;br /&gt;
* [http://www.technexion.com/index.php/tao-3530 TechNexion TAO-3530 Thunder Board]&lt;br /&gt;
&lt;br /&gt;
Support for other OMAP3-based boards might be added by kernel patches and extended configuration.&lt;br /&gt;
&lt;br /&gt;
Support for OMAP4-based boards is expected is a short-coming future.&lt;br /&gt;
&lt;br /&gt;
==Featured Optimizations==&lt;br /&gt;
&lt;br /&gt;
GeeXboX features multiple software optimizations to get the best our of the available hardware capabilities.&lt;br /&gt;
&lt;br /&gt;
* '''NEON optimizations''': enabled by default through GCC flags and ASM routines in [http://trac.enlightenment.org/e/wiki/Evas Evas] compositing and rendering library, [http://www.ffmpeg.org/ FFmpeg] set of software video decoders and X.Org video driver (omapfb).&lt;br /&gt;
* '''Multi-cores optimizations''': Only relevant on Cortex-A9 cores. Enabled [http://trac.enlightenment.org/e/wiki/Evas Evas] asynchronous rendering and [http://www.ffmpeg.org/ FFmpeg] MPEG-2 and H.264 video decoding.&lt;br /&gt;
* '''C64x DSP''': Raw DSP access through GStreamer plugin (WIP) for MPEG-2, VC-1 and H.264 video decoding.&lt;br /&gt;
* '''OpenMAX''': Support for video decoding abstraction in GStreamer (WIP) and VLC (WIP).&lt;br /&gt;
* '''OpenGL|ES''': Support for OpenGL|ES engine through PowerVR SGX chip in Evas. Due to SGX limited bandwidth and fillrate, h/w graphic rendering is not much faster than s/w rendering but at least completely offload CPU.&lt;br /&gt;
&lt;br /&gt;
==Retrieving GeeXboX==&lt;br /&gt;
&lt;br /&gt;
'''Note: The development branch is where the development work takes place and you should use this if you're after to work with the latest cutting edge developments. It is possible trunk can suffer temporary periods of instability while new features are developed and if this is undesirable, it is recommended using one of the release branches. Use ONLY for development purposes.'''&lt;br /&gt;
&lt;br /&gt;
GeeXbox uses [http://mercurial.selenic.com/ Mercurial] as a revision control system, so you will install the mercurial package for your host system. On an Ubuntu-based system this will be done with,&lt;br /&gt;
&lt;br /&gt;
    # sudo apt-get install mercurial&lt;br /&gt;
&lt;br /&gt;
Now, the first thing you will do is download the sources from Mercurial GeeXboX repository.&lt;br /&gt;
&lt;br /&gt;
    # hg clone http://hg.geexbox.org/geexbox&lt;br /&gt;
&lt;br /&gt;
==Building Sources==&lt;br /&gt;
&lt;br /&gt;
Next, enter to ''geexbox'' directory and edit with your preferred editor the ''config/options'' file. Set&lt;br /&gt;
&lt;br /&gt;
    TARGET_ARCH=arm&lt;br /&gt;
    TARGET_CPU=cortex-a8&lt;br /&gt;
    SERVICES=yes&lt;br /&gt;
    XORG_DRIVERS=&amp;quot;omapfb&amp;quot;&lt;br /&gt;
    PULSEAUDIO=no&lt;br /&gt;
    GSTREAMER=yes&lt;br /&gt;
    DEVTOOLS=yes&lt;br /&gt;
&lt;br /&gt;
Finally build the distribution with&lt;br /&gt;
&lt;br /&gt;
    # make flat&lt;br /&gt;
&lt;br /&gt;
The result will be in geexbox-flat-devel-*.arm.eglibc directory&lt;br /&gt;
&lt;br /&gt;
==Installation on SD Card==&lt;br /&gt;
&lt;br /&gt;
First prepare the SD card the following way:&lt;br /&gt;
&lt;br /&gt;
* create one boot FAT32 (type 0B) partition, any size, I took 8MB&lt;br /&gt;
* create one rootfs EXT2 partition. &lt;br /&gt;
&lt;br /&gt;
Then copy the uImage file to FAT32 partition&lt;br /&gt;
&lt;br /&gt;
    # cp geexbox-flat-devel-*.arm.eglibc/boot/uImage   /media/boot&lt;br /&gt;
&lt;br /&gt;
N.B: If running on IGEPv2 board, also copy the boot.ini file, it contains the whole U-Boot set of commands for automatic bootup.&lt;br /&gt;
&lt;br /&gt;
    # cp geexbox-flat-devel-*.arm.eglibc/boot/boot.ini /media/boot&lt;br /&gt;
&lt;br /&gt;
Next, edit the geexbox-flat-devel-*.arm.eglibc/etc/video file and enable/disable OpenGL support&lt;br /&gt;
&lt;br /&gt;
    OPENGL=[yes|no]&lt;br /&gt;
&lt;br /&gt;
Finally, copy the geexbox-flat-devel-*.arm.eglibc contents to EXT2 partition.&lt;br /&gt;
&lt;br /&gt;
    # fakeroot cp -dpfa -R geexbox-flat-devel-*.arm.eglibc/* /media/rootfs/&lt;br /&gt;
&lt;br /&gt;
==Booting==&lt;br /&gt;
&lt;br /&gt;
If your board doesn't support automatic boot through boot.ini, you can setup the following U-Boot environment variables.&lt;br /&gt;
&lt;br /&gt;
    setenv geexbox-args &amp;quot;console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootwait init=/linuxrc lang=en keymap=qwerty remote=default_remote receiver=default_receiver hdtv&amp;quot;&lt;br /&gt;
    setenv omap-args &amp;quot;omapfb.mode=dvi:1280x720MR-32@60 omapfb.vram=0:8M,1:4M mem=442M&amp;quot;&lt;br /&gt;
    setenv bootargs &amp;quot;${geexbox-args} ${omap-args}&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Adapt the resolution and memory to your given board.&lt;br /&gt;
&lt;br /&gt;
Then boot the distribution from MMC:&lt;br /&gt;
&lt;br /&gt;
    fatload mmc 0:1 80100000 uImage&lt;br /&gt;
    bootm 80100000&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
&lt;br /&gt;
If you want to contribute to GeeXboX or need some help, you can subscribe to the [http://geexbox.org/en/mailing.html development list] (devel at geexbox.org). &lt;br /&gt;
&lt;br /&gt;
[[Category:GeeXboX]]&lt;/div&gt;</summary>
		<author><name>Gxben</name></author>	</entry>

	</feed>