<?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>S. P. T. Krishnan&#039;s take on things... &#187; How-To</title>
	<atom:link href="http://shruta.net/category/how-to/feed/" rel="self" type="application/rss+xml" />
	<link>http://shruta.net</link>
	<description>perspectives, opinions, ideas</description>
	<lastBuildDate>Sat, 27 Mar 2010 00:02:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0-alpha</generator>
		<item>
		<title>Building Android from source, a compiled guide</title>
		<link>http://shruta.net/2009/02/building-android-from-source-a-compiled-guide/</link>
		<comments>http://shruta.net/2009/02/building-android-from-source-a-compiled-guide/#comments</comments>
		<pubDate>Sun, 15 Feb 2009 12:15:27 +0000</pubDate>
		<dc:creator>Kris Flyer</dc:creator>
				<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://sptkrishnan.wordpress.com/?p=125</guid>
		<description><![CDATA[Recently I got my hands on a Android dev phone 1, the unlocked developer-friendly phone using the shiny new Linux-based OS from Google. I spent a few days to figure out how to compile a new OS into the phone. Unlike the application development process that is well documented by Google, system development is largely [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Recently I got my hands on a <a title="Android Developer Phone 1" href="http://code.google.com/android/dev-devices.html" target="_blank">Android dev phone 1</a>, the unlocked developer-friendly phone using the shiny new <a title="Open Handset Alliance" href="http://www.openhandsetalliance.com/">Linux-based OS</a> from Google. I spent a few days to figure out how to compile a new OS into the phone. Unlike the <a title="Android Developer Website" href="http://developer.android.com/" target="_blank">application development</a> process that is well documented by Google, system development is largely left to the community to figure out. I am providing here a step-by-step guide for those who are like me with some inputs of mine but mostly with links to the websites&#8230;</p>
<p style="text-align:justify;"><span id="more-125"></span>First off, you need a system where you can download the android sources from the web and compile. There are several platforms which are supported for the build process &#8211; <a title="Ubuntu OS" href="http://www.ubuntu.com">Ubuntu 32 bit, 64bit</a> and <a title="MAC OS X, Apple" href="http://www.apple.com">Mac OS X</a>. My personal view being 32 bit OS is the best as it requires least modifications. If you have a ubuntu box sitting around you can start-off right away. If not, I suggest using a <a title="Virtual Machine, wikipedia" href="http://en.wikipedia.org/wiki/Virtual_machine">virtual machine</a> instead of installing an OS. You can install the free <a title="VMware player" href="http://www.vmware.com/products/player/">vmware player</a> from <a title="VMware" href="http://www.vmware.com">vmware</a> and use a prebuilt <a title="Ubuntu virtual application" href="http://www.vmware.com/appliances/directory/54735">ubuntu 32 bit virtual appliance</a> for compiling Android. Either way, apply all pending security and software updates before setting up the Android development tool chain.</p>
<p style="text-align:justify;">Your starting point for android system development is <a title="Download Android source website" href="http://source.android.com/download">Android source</a> website. Follow the instructions there to the dot. The &#8220;repo sync&#8221; or download process should take less than a hour if you are on a good broadband connection. The &#8220;make&#8221; will take nearly 3 hours on a raw metal machine. On a virtual machine based ubuntu system it might take more time. The compilation will produce 4 img files &#8211; boot, userdata, ramdisk, and recovery.</p>
<p style="text-align:justify;">Now, before you flash the binary img files you need to take care of few more details. Follow the <a title="Building for the dream" href="http://source.android.com/documentation/building-for-dream">dream aka dev phone 1</a> instructions as we are compiling for the google dev phone 1. In step 5, you may get a error. This is just a path issue. Setup your path and you should be fine. Once you run the repo sync &amp; make again, it will get some updates from the web and build the img files suitable for the dev phone.</p>
<p style="text-align:justify;">Google website doesn&#8217;t tell you how to get the img files into the developer phone. You need to use two tools &#8216;fastboot&#8217; and &#8216;adb&#8217; to get the images into the phones. They are located in the folder &#8220;out/target/product/dream/&#8221; relative to the code branch you checked out &#8211; either main or cupcake. Add that directory to the path variable. Connect dev phone 1 to the PC and verify through &#8216;abd devices&#8217; from the terminal. Adb will start a daemon on first run. Some users have reported that they problems identifying the devices. This seems to be mainly the case if you are using a VM. If this is the case, &#8217;sudo&#8217; all your commands. Once you have verified the device is identified by adb, next boot the phone into fastboot mode. For this, switch off your phone and then press and hold both the poweroff+back until you see the 3 Androids on skates and the words &#8220;fastboot&#8221; in the middle of the screen. Now issue &#8220;fastboot devices&#8221;. You should be able to see your phone and it should say it is in fastboot model. At this stage, you need to issue the following commands</p>
<p style="text-align:justify;"><strong><em>fastboot flash boot boot.img</em></strong></p>
<p style="text-align:justify;"><strong><em>fastboot flash userdata userdata.img</em></strong></p>
<p style="text-align:justify;"><strong><em>fastboot flash system system.img</em></strong></p>
<p style="text-align:justify;">and finally <strong><em>fastboot reboot</em></strong> and you are done getting a new OS on the phone <img src='http://shruta.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> <strong><em><br />
</em></strong></p>
<p style="text-align:justify;"><em>ps: feel free to drop a comment or question</em><strong><em><br />
</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://shruta.net/2009/02/building-android-from-source-a-compiled-guide/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Building Google&#039;s Libjingle in ubuntu linux 5.10</title>
		<link>http://shruta.net/2006/02/building-googles-libjingle-in-ubuntu-linux-510/</link>
		<comments>http://shruta.net/2006/02/building-googles-libjingle-in-ubuntu-linux-510/#comments</comments>
		<pubDate>Wed, 15 Feb 2006 12:48:37 +0000</pubDate>
		<dc:creator>Kris Flyer</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[How-To]]></category>

		<guid isPermaLink="false">http://shruta.net/2006/02/15/building-googles-libjingle-in-ubuntu-linux-510/</guid>
		<description><![CDATA[Update (Jan 4 2009): this post is outdated in 2 ways&#8230; the latest version of ubuntu is 8.10 and the latest version of libjingle is 0.40 . I am no longer using libjingle as well  
Here is my experience building libjingle** in my Ubuntu Linux 5.10.  I spent nearly a day building it [...]]]></description>
			<content:encoded><![CDATA[<p>Update (Jan 4 2009): this post is outdated in 2 ways&#8230; the latest version of <a title="Ubuntu" href="http://www.ubuntu.com/" target="_blank">ubuntu</a> is 8.10 and the latest version of <a title="Linjingle 0.40" href="http://code.google.com/p/libjingle/downloads/list" target="_blank">libjingle</a> is 0.40 . I am no longer using libjingle as well <img src='http://shruta.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Here is my experience building libjingle** in my Ubuntu Linux 5.10.  I spent nearly a day building it (including many u-turns).  I am writing this how-to in the hope you will spend much less time.  YMMV.</p>
<p>Contents:</p>
<ol>
<li>Hardware tried on</li>
<li>Installation
<ol>
<li>Download</li>
<li>Installing dependencies using
<ol>
<li>Synaptic package manager</li>
<li>Direct compilation</li>
</ol>
</li>
</ol>
</li>
<li>Installing lilbjingle</li>
<li>Future Goodies</li>
</ol>
<p><span id="more-11"></span></p>
<p>I am using Ubuntu 5.10 with all updates as of this day of posting.  I have installed libjingle in the following hardware.<br />
* Fujitsu lifebook S7021<br />
* DELL Precision 670<br />
* Assembled PIV system</p>
<p>First, Install the following packages using <strong>Synaptic Package Manager</strong>.<br />
* libexpat1-dev<br />
* libglib2.0-dev<br />
* libogg-dev<br />
* libssl-dev<br />
* libasound2-dev</p>
<p>If some configure script later-on is unhappy with the env, installing the following may help.  These are few of the u-turns I experimented with.  These are not required per se.<br />
* libspeex-dev<br />
* openssl</p>
<p>Dowload the following external packages:<br />
* ortp, speex, iLBC, libjingle</p>
<p>I have created a parent folder &#8220;libjingle&#8221; and downloaded the packges there.<br />
Now CD to that folder and do the following instructions:</p>
<p>tar zxvf ortp-0.7.1.tar.gz<br />
tar zxvf speex-1.0.5.tar.gz<br />
tar zxvf ilbc-rfc3951.tar.gz<br />
tar zxvf libjingle-0.2.1.tar.gz</p>
<p>cd ortp-0.7.1<br />
./configure<br />
make<br />
sudo make install<br />
cd ..</p>
<p>cd speex-1.0.5<br />
./configure<br />
make<br />
sudo make install<br />
cd ..</p>
<p>cd ilbc-rfc3951<br />
./configure<br />
make<br />
sudo make install<br />
cd ..</p>
<p>cd libjingle-0.2.1<br />
./configure &#8211;with-ilbc=/usr/local<br />
make<br />
sudo make install</p>
<p>That&#8217;s it, your libjingle library is now inside the talk folder.  Enjoy.<br />
There are 3 examples included in the package.  I am yet to try out.</p>
<p>Future Goodies:</p>
<p>I have proposed using libjingle for my Real-Time Systems course module project in NUS, Singapore where I am doing my part-time PhD in Computer Science.  The Professor instantly accepted it with an additional &#8220;Wow&#8221; factor.</p>
<p>We believe we have come-up with an innovate RTS application using Google&#8217;s Talk infrastructure.  Once we bring it to realiy, which is scheduled for completion by end March 2006, we will release it the community including code.  My motto: take from community; give back to community.</p>
<p>** libjingle is an implementation of proposed jingle and jingle-audio extensions to XMPP (an IM) protocol.</p>
]]></content:encoded>
			<wfw:commentRss>http://shruta.net/2006/02/building-googles-libjingle-in-ubuntu-linux-510/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
