<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://bugs.maemo.com/skins/common/feed.css?207"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>Distcc - Revision history</title>
		<link>http://bugs.maemo.com/index.php?title=Distcc&amp;action=history</link>
		<description>Revision history for this page on the wiki</description>
		<language>en</language>
		<generator>MediaWiki 1.15.5-7</generator>
		<lastBuildDate>Tue, 07 Apr 2026 13:34:25 GMT</lastBuildDate>
		<item>
			<title>amigadave:&amp;#32;/* References */ better author link</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37964&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37964&amp;oldid=prev</guid>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;References:&amp;#32;&lt;/span&gt; better author link&lt;/p&gt;

		&lt;table style=&quot;background-color: white; color:black;&quot;&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 valign='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:38, 20 August 2010&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 196:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 196:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &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; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* [http://talk.maemo.org/showthread.php?p=792606 Click here for the forum thread on this subject]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;* [http://talk.maemo.org/showthread.php?p=792606 Click here for the forum thread on this subject]&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;http&lt;/del&gt;:&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;//www.GlobalLinuxSecurity.com &lt;/del&gt;Original author]&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;[User&lt;/ins&gt;:&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Ewheelerinc|&lt;/ins&gt;Original author&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;]&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:N900]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:N900]]&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Software]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Software]]&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Development]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff generator: internal 2026-04-07 13:34:26 --&gt;
&lt;/table&gt;</description>
			<pubDate>Fri, 20 Aug 2010 08:38:30 GMT</pubDate>			<dc:creator>amigadave</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
		<item>
			<title>amigadave:&amp;#32;wikify slightly, tidy</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37963&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37963&amp;oldid=prev</guid>
			<description>&lt;p&gt;wikify slightly, tidy&lt;/p&gt;
&lt;a href=&quot;http://bugs.maemo.com/index.php?title=Distcc&amp;amp;diff=37963&amp;amp;oldid=37961&quot;&gt;Show changes&lt;/a&gt;</description>
			<pubDate>Fri, 20 Aug 2010 08:37:28 GMT</pubDate>			<dc:creator>amigadave</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
		<item>
			<title>ewheelerinc:&amp;#32;/* Distributed Remote-Distributed-Compile from the n900 to native armel targets */</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37961&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37961&amp;oldid=prev</guid>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Distributed Remote-Distributed-Compile from the n900 to native armel targets&lt;/span&gt;&lt;/p&gt;

		&lt;table style=&quot;background-color: white; color:black;&quot;&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 valign='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 03:55, 20 August 2010&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&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;Distributed &lt;/del&gt;Remote-Distributed-Compile from the n900 to native armel targets =&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;= Remote-Distributed-Compile from the n900 to native armel targets =&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;For those who have tried to compile on the n900, you might notice it is a bit slow since an ARM CPU is great for general use, but not---for example---compiling a kernel.&amp;nbsp; It, however, often useful to compile natively on the architecture you will be using.&amp;nbsp; Originally this process was used to configure a distcc farm for the mini2440 ARM(el) board---and this is directly applicable to the n900 platform---and it works on my phone!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;For those who have tried to compile on the n900, you might notice it is a bit slow since an ARM CPU is great for general use, but not---for example---compiling a kernel.&amp;nbsp; It, however, often useful to compile natively on the architecture you will be using.&amp;nbsp; Originally this process was used to configure a distcc farm for the mini2440 ARM(el) board---and this is directly applicable to the n900 platform---and it works on my phone!&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff generator: internal 2026-04-07 13:34:26 --&gt;
&lt;/table&gt;</description>
			<pubDate>Fri, 20 Aug 2010 03:55:48 GMT</pubDate>			<dc:creator>ewheelerinc</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
		<item>
			<title>ewheelerinc:&amp;#32;/* 6. Halt the vm and launch multiple instances */</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37960&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37960&amp;oldid=prev</guid>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;6. Halt the vm and launch multiple instances&lt;/span&gt;&lt;/p&gt;

		&lt;table style=&quot;background-color: white; color:black;&quot;&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 valign='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 03:38, 20 August 2010&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 119:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 119:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;d. Launch the vm's:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;d. Launch the vm's:&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;nbsp; host-root#&amp;nbsp; for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;i &lt;/del&gt;in 1 2 3; do qemu-system-arm -name armvm$&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;i &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;nbsp; host-root#&amp;nbsp; for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;arm &lt;/ins&gt;in 1 2 3; do qemu-system-arm -name armvm$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; -M versatilepb -kernel vmlinuz-2.6.26-1-versatile \&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; -M versatilepb -kernel vmlinuz-2.6.26-1-versatile \&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; -initrd initrd.img-2.6.26-1-versatile \&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; -initrd initrd.img-2.6.26-1-versatile \&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 135:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 135:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp; 							tap2&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp; 							tap2&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp; 							tap3&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;nbsp; 							tap3&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 style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt; &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&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 style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &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; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Run a distributed build on your n900 ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== Run a distributed build on your n900 ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff generator: internal 2026-04-07 13:34:26 --&gt;
&lt;/table&gt;</description>
			<pubDate>Fri, 20 Aug 2010 03:38:58 GMT</pubDate>			<dc:creator>ewheelerinc</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
		<item>
			<title>ewheelerinc:&amp;#32;/* About the Author */</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37959&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37959&amp;oldid=prev</guid>
			<description>&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;About the Author&lt;/span&gt;&lt;/p&gt;

		&lt;table style=&quot;background-color: white; color:black;&quot;&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 valign='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 03:34, 20 August 2010&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 166:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 166:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &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; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;--[[User:ewheelerinc|ewheelerinc]] 03:27, 20 August 2010 (UTC)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;--[[User:ewheelerinc|ewheelerinc]] 03:27, 20 August 2010 (UTC)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&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 style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&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 style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;=== Forum Thread ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&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 style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[http://talk.maemo.org/showthread.php?p=792606 Click here for the forum thread on this subject]&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== About the Author ===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;=== About the Author ===&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: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Eric Wheeler is a Linux consultant and security professional available for hire at [http://www.GlobalLinuxSecurity.com http://www.GlobalLinuxSecurity.com].&amp;nbsp; He has 14 years of experience in Linux since 1996 with a great breadth of knowledge.&amp;nbsp; Eric is currently working on a PhD in Computer Science at Portland&amp;nbsp; State University under [http://cs.pdx.edu/~walpole Professor Jonathan Walpole].&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Eric Wheeler is a Linux consultant and security professional available for hire at [http://www.GlobalLinuxSecurity.com http://www.GlobalLinuxSecurity.com].&amp;nbsp; He has 14 years of experience in Linux since 1996 with a great breadth of knowledge.&amp;nbsp; Eric is currently working on a PhD in Computer Science at Portland&amp;nbsp; State University under [http://cs.pdx.edu/~walpole Professor Jonathan Walpole].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff generator: internal 2026-04-07 13:34:26 --&gt;
&lt;/table&gt;</description>
			<pubDate>Fri, 20 Aug 2010 03:34:15 GMT</pubDate>			<dc:creator>ewheelerinc</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
		<item>
			<title>ewheelerinc:&amp;#32;distcc+ccache distributed gcc make -jX on the n900 against armel VMs on x86 hardware</title>
			<link>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37958&amp;oldid=prev</link>
			<guid>http://bugs.maemo.com/index.php?title=Distcc&amp;diff=37958&amp;oldid=prev</guid>
			<description>&lt;p&gt;distcc+ccache distributed gcc make -jX on the n900 against armel VMs on x86 hardware&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Distributed Remote-Distributed-Compile from the n900 to native armel targets =&lt;br /&gt;
&lt;br /&gt;
For those who have tried to compile on the n900, you might notice it is a bit slow since an ARM CPU is great for general use, but not---for example---compiling a kernel.  It, however, often useful to compile natively on the architecture you will be using.  Originally this process was used to configure a distcc farm for the mini2440 ARM(el) board---and this is directly applicable to the n900 platform---and it works on my phone!&lt;br /&gt;
&lt;br /&gt;
This assumes familiarity with qemu-system-arm, gcc (and possibly ccache+distcc), chroot installs, bridged networking and perhaps a few other concepts.&lt;br /&gt;
&lt;br /&gt;
Where possible I distinguish the different system root-prompts as:&lt;br /&gt;
 n900-chroot#  The easydebian chroot prompt (you can ssh in too if you like)&lt;br /&gt;
 host-root#    The high-power desktop system to run the ARM VM's under qemu&lt;br /&gt;
 guest-root#   The ARM VM's themselves.&lt;br /&gt;
&lt;br /&gt;
== 1. Install Easy Debian ==&lt;br /&gt;
&lt;br /&gt;
Before continuing, you will need to install [http://wiki.maemo.org/Easy_Debian Easy Debian] on your phone.  This is the fastest way to get a working native gcc environment on the n900.  Once it is installed, install ccache, distcc, and build-essential:&lt;br /&gt;
&lt;br /&gt;
 n900-chroot# apt-get install ccache distcc build-essential&lt;br /&gt;
&lt;br /&gt;
Then configure /usr/bin/gcc-ccache the same way as #4 below on the easydebian chroot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 2. Install a few QEMU VMs ==&lt;br /&gt;
&lt;br /&gt;
On your host computer (not the phone), download and install the Lenny armel qcow2, vmlinuz and initrd images from here:&lt;br /&gt;
&lt;br /&gt;
[http://people.debian.org/~aurel32/qemu/armel/ Lenny armel qemu images]&lt;br /&gt;
&lt;br /&gt;
I used the _small version so I can be as specific as possible with packages.  I assume you use the _small version from here.&lt;br /&gt;
&lt;br /&gt;
Install qemu-arm on your system (usually apt-get install [http://www.qemu.org qemu] and boot the VM:&lt;br /&gt;
&lt;br /&gt;
 host-root# qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.26-1-versatile \&lt;br /&gt;
    -initrd initrd.img-2.6.26-1-versatile \&lt;br /&gt;
    -hda debian_lenny_armel_small.qcow2 \&lt;br /&gt;
    -append &amp;quot;root=/dev/sda1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 3. Install the required packages on the VM ==&lt;br /&gt;
&lt;br /&gt;
First update /etc/apt/sources.list for the country of your choice (defaults to .de).  I recommend commenting the volatile repo unless  you intend to use it.&lt;br /&gt;
Then add the packages:&lt;br /&gt;
&lt;br /&gt;
 guest-root# apt-get update&lt;br /&gt;
 guest-root# apt-get upgrade&lt;br /&gt;
 guest-root# apt-get install build-essential ccache distcc&lt;br /&gt;
&lt;br /&gt;
== 4. Configure distcc and ccache ==&lt;br /&gt;
&lt;br /&gt;
a. Add the hosts to /etc/distcc/hosts&lt;br /&gt;
&lt;br /&gt;
b. Configure /etc/default/distcc with at least:&lt;br /&gt;
 STARTDISTCC=&amp;quot;true&amp;quot;&lt;br /&gt;
 # configure your subnet&lt;br /&gt;
 ALLOWEDNETS=&amp;quot;127.0.0.1 192.168.0.0/16&amp;quot;&lt;br /&gt;
&lt;br /&gt;
c. create a ccache/distcc wrapper&lt;br /&gt;
&lt;br /&gt;
 root# mv /usr/bin/gcc /usr/bin/gcc-orig&lt;br /&gt;
 root# cat&amp;lt;&amp;lt;EOT &amp;gt; /usr/bin/gcc-ccache&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 export CCACHE_PREFIX=distcc&lt;br /&gt;
 # List the distcc hosts here; I had trouble with /etc/distcc/hosts working&lt;br /&gt;
 export DISTCC_HOSTS='192.168.99.101 192.168.99.102 192.168.99.103'&lt;br /&gt;
 exec ccache gcc-orig &amp;quot;$@&amp;quot;&lt;br /&gt;
 EOT&lt;br /&gt;
 root# chmod 755 /usr/bin/gcc-ccache&lt;br /&gt;
&lt;br /&gt;
Be sure to do this on the n900 too!&lt;br /&gt;
&lt;br /&gt;
d. link the wrapper as the new gcc:&lt;br /&gt;
 root# ln -s /usr/bin/gcc-ccache /usr/bin/gcc&lt;br /&gt;
&lt;br /&gt;
e. test the distcc-ccache-gcc wrapper:&lt;br /&gt;
 root# gcc -version&lt;br /&gt;
 gcc-orig: no input files&lt;br /&gt;
 distcc[2486] ERROR: compile (null) on localhost failed&lt;br /&gt;
&lt;br /&gt;
The distcc error is expected&lt;br /&gt;
&lt;br /&gt;
== 5. Configure the network to DHCP ==&lt;br /&gt;
&lt;br /&gt;
 guest-root# echo -e &amp;quot;auto eth0\niface eth0 inet dhcp&amp;quot; &amp;gt;&amp;gt; /etc/network/interfaces&lt;br /&gt;
 guest-root# echo -e &amp;quot;auto eth1\niface eth1 inet dhcp&amp;quot; &amp;gt;&amp;gt; /etc/network/interfaces&lt;br /&gt;
&lt;br /&gt;
== 6. Halt the vm and launch multiple instances ==&lt;br /&gt;
&lt;br /&gt;
a. Halt the guest and close the window:&lt;br /&gt;
 guest-root# shutdown -h now&lt;br /&gt;
&lt;br /&gt;
b. Configuring a network bridge is beyond the scope of this document, but roughly, this is my config on the *host* system.  Here we assume that the n900 can route to the ARM VM farm (my network)---or that the bridge lives on the same network (more common).&lt;br /&gt;
&lt;br /&gt;
 root# cat&amp;lt;&amp;lt;EOT &amp;gt; /usr/local/bin/qemu-ifup-br0&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 iface=&amp;quot;$1&amp;quot;&lt;br /&gt;
 bridgeName=`basename &amp;quot;$0&amp;quot; | cut -f3 -d-`&lt;br /&gt;
 echo &amp;quot;bridgeName=$bridgeName iface=$1&amp;quot;&lt;br /&gt;
 /sbin/ifconfig &amp;quot;$iface&amp;quot; 0.0.0.0 up&lt;br /&gt;
 /usr/sbin/brctl addif &amp;quot;$bridgeName&amp;quot; &amp;quot;$iface&amp;quot;&lt;br /&gt;
 EOT&lt;br /&gt;
 chmod 755 /usr/local/bin/qemu-ifup-br0&lt;br /&gt;
&lt;br /&gt;
 host-root# brctl addbr br0&lt;br /&gt;
 host-root# brctl addif br0 eth0&lt;br /&gt;
 host-root# ifconfig br0 192.168.99.222&lt;br /&gt;
 host-root# ip route replace default via 192.168.99.1&lt;br /&gt;
&lt;br /&gt;
c. Configure your local dhcp server to hand out 192.168.99.101--103 for mac addresses 00:16:3e:00:00:01--03.  If you are using ISC's dhcpd, the config looks something like this:&lt;br /&gt;
&lt;br /&gt;
       host arm-vm1 {&lt;br /&gt;
               hardware ethernet 00:16:3e:00:00:01;&lt;br /&gt;
               fixed-address 192.168.99.101;        }&lt;br /&gt;
       host arm-vm2 {&lt;br /&gt;
               hardware ethernet 00:16:3e:00:00:02;&lt;br /&gt;
               fixed-address 192.168.99.102;        }&lt;br /&gt;
       host arm-vm3 {&lt;br /&gt;
               hardware ethernet 00:16:3e:00:00:03;&lt;br /&gt;
               fixed-address 192.168.99.103;        }&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
d. Launch the vm's:&lt;br /&gt;
&lt;br /&gt;
 host-root#  for i in 1 2 3; do qemu-system-arm -name armvm$i \&lt;br /&gt;
    -M versatilepb -kernel vmlinuz-2.6.26-1-versatile \&lt;br /&gt;
    -initrd initrd.img-2.6.26-1-versatile \&lt;br /&gt;
    -hda debian_lenny_armel_small.qcow2 \&lt;br /&gt;
    -append &amp;quot;root=/dev/sda1&amp;quot; \&lt;br /&gt;
    -net nic,macaddr=00:16:3e:00:00:0$arm \&lt;br /&gt;
    -net tap,script=/usr/local/bin/qemu-ifup-br0 \&lt;br /&gt;
    -daemonize \&lt;br /&gt;
    -snapshot ; done&lt;br /&gt;
&lt;br /&gt;
e. The bridge listing should look something like this:&lt;br /&gt;
 host-root# brctl show&lt;br /&gt;
 br0		8000.001cc0b1dadf	no		eth0&lt;br /&gt;
 							tap1&lt;br /&gt;
 							tap2&lt;br /&gt;
 							tap3&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Run a distributed build on your n900 ==&lt;br /&gt;
&lt;br /&gt;
a. Download a recent vanilla kernel:&lt;br /&gt;
 cd /usr/src&lt;br /&gt;
 wget -O- http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.34.tar.bz2 | tar xjv&lt;br /&gt;
 cd linux-2.6.34&lt;br /&gt;
    [...]&lt;br /&gt;
 make -j3 defconfig&lt;br /&gt;
 *** Default configuration is based on 'versatile_defconfig'&lt;br /&gt;
 #&lt;br /&gt;
 # configuration written to .config&lt;br /&gt;
 #&lt;br /&gt;
 make -j4&lt;br /&gt;
    [...]&lt;br /&gt;
 &lt;br /&gt;
b. Open top and watch your ARM VM's spin at 100% cpu:&lt;br /&gt;
 USER      PR  NI  VIRT  RES  SHR S %CPU %MEM COMMAND                          &lt;br /&gt;
 root      20   0  556m 362m 1492 R  101  6.0 qemu-system-arm -name armel-vm1 ...&lt;br /&gt;
 root      20   0  539m 278m 1472 R  101  4.6 qemu-system-arm -name armel-vm2 ...&lt;br /&gt;
 root      20   0  530m 216m 1472 R   99  3.6 qemu-system-arm -name armel-vm3 ...&lt;br /&gt;
 root      20   0  538m 208m 1472 R  101  3.5 qemu-system-arm -name armel-vm4 ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As you can see, I have 4 VM's on my system, one for each core on the i7.  Since the ARM architecture under qemu (currently) only supports a single core, you need to run a VM for each core.&lt;br /&gt;
&lt;br /&gt;
You *could* configure distcc+ccache to cross-compile to armel on your native x86/64 hardware, however, that is a different tutorial (it would probably be much faster too, but perhaps less flexible).  This might be extended to run on the n900's localhost to spin the native 600mhz CPU too---and I leave this as an exercise for the reader.&lt;br /&gt;
&lt;br /&gt;
--[[User:ewheelerinc|ewheelerinc]] 03:27, 20 August 2010 (UTC)&lt;br /&gt;
&lt;br /&gt;
=== About the Author ===&lt;br /&gt;
Eric Wheeler is a Linux consultant and security professional available for hire at [http://www.GlobalLinuxSecurity.com http://www.GlobalLinuxSecurity.com].  He has 14 years of experience in Linux since 1996 with a great breadth of knowledge.  Eric is currently working on a PhD in Computer Science at Portland  State University under [http://cs.pdx.edu/~walpole Professor Jonathan Walpole].&lt;/div&gt;</description>
			<pubDate>Fri, 20 Aug 2010 03:27:28 GMT</pubDate>			<dc:creator>ewheelerinc</dc:creator>			<comments>http://bugs.maemo.com/Talk:Distcc</comments>		</item>
	</channel>
</rss>