<?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>mcBachmann.de TechBlog &#187; programming</title>
	<atom:link href="http://blog.mcbachmann.de/category/linux/programming/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.mcbachmann.de</link>
	<description>Der Blog zur Website ;-)</description>
	<lastBuildDate>Wed, 11 Jan 2012 21:12:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>git: Clean .gitignore(d) files from Repository</title>
		<link>http://blog.mcbachmann.de/linux/programming/git-clean-gitignored-files-from-repository</link>
		<comments>http://blog.mcbachmann.de/linux/programming/git-clean-gitignored-files-from-repository#comments</comments>
		<pubDate>Fri, 27 May 2011 14:20:38 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[git]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=660</guid>
		<description><![CDATA[To keep a repository clean from temporary files, git users can create a file named .gitignore and define wildcards or absolute paths to let git ignore these files. This works for the most users as expected but it does not remove already checked in files. If you also want to clean up your existing repository [...]]]></description>
			<content:encoded><![CDATA[<p>To keep a repository clean from temporary files, git users can create a file named <b>.gitignore</b> and define wildcards or absolute paths to let git ignore these files. This works for the most users as expected but it does not remove already checked in files. If you also want to clean up your existing repository from these ignored files, there is an easy way to get a list of ignored files. <span id="more-660"></span></p>
<p>Just enter the root of your git repository and enter the following to get a list of files which are otherwise ignored on a <b>git status</b>:<br />
<code><br />
<blockquote>git ls-files -i --exclude-from=.gitignore</p></blockquote>
<p></code></p>
<p>Thanks to <a href="http://stackoverflow.com/questions/466764/show-ignored-files-in-git/467053#467053">VonC (stackoverflow)</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/programming/git-clean-gitignored-files-from-repository/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GitHub: Merged open repositories from Gitorious to GitHub.</title>
		<link>http://blog.mcbachmann.de/linux/programming/github-merged-open-repositories-from-gitorious-to-github</link>
		<comments>http://blog.mcbachmann.de/linux/programming/github-merged-open-repositories-from-gitorious-to-github#comments</comments>
		<pubDate>Wed, 27 Apr 2011 11:51:35 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[misc]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[gitorious]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=643</guid>
		<description><![CDATA[Finally I merged my open repositories from Gitorious to GitHub. Gitorious was the first Git-On-The-Web-Repo and was easy to use &#8211; but I like the social features of GitHub a bit more and decided today to switch.]]></description>
			<content:encoded><![CDATA[<p>Finally I merged my open repositories from <a href="https://gitorious.org/~sven">Gitorious</a> to <a href="https://github.com/sven">GitHub</a>. Gitorious was the first Git-On-The-Web-Repo and was easy to use &#8211; but I like the social features of GitHub a bit more and decided today to switch.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/programming/github-merged-open-repositories-from-gitorious-to-github/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenWrt: Split Toolchain for faster Firmware Build Times</title>
		<link>http://blog.mcbachmann.de/linux/openwrt-split-toolchain-for-faster-firmware-build-times</link>
		<comments>http://blog.mcbachmann.de/linux/openwrt-split-toolchain-for-faster-firmware-build-times#comments</comments>
		<pubDate>Sat, 02 Apr 2011 11:47:46 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[toolchain]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=632</guid>
		<description><![CDATA[At work we&#8217;re using Hudson to automatically build projects whenever something is changed in a SCM. For most projects you&#8217;ll get fast results if your checkin breaks something which you don&#8217;t mind because you not always rebuild the complete project. Now, OpenWrt brings its own toolchain, which compiles the complete local and cross-compiling stuff because [...]]]></description>
			<content:encoded><![CDATA[<p>At work we&#8217;re using Hudson to automatically build projects whenever something is changed in a SCM. For most projects you&#8217;ll get fast results if your checkin breaks something which you don&#8217;t mind because you not always rebuild the complete project. Now, OpenWrt brings its own toolchain, which compiles the complete local and cross-compiling stuff because the compiler on the host is normally a bit behind and does not contain latest fixes for ARM and other architectures. So how to save some time with not compiling the toolchain everytime a project is build? <span id="more-632"></span></p>
<p>For this purpose OpenWrt has a feature called &#8220;Use External Toolchain&#8221;. This makes it possible to also use vendor-specific toolchains to build OpenWrt. What currently not worked was using OpenWrt itself as its external toolchain. To make this possible, I&#8217;ve created some patches (send already to the mailing list/bugzilla) and written some short <a href="http://wiki.openwrt.org/doc/howto/external_toolchain">How-To in the OpenWrt Wiki</a>.</p>
<p>So now the Toolchain is rebuild once a week (but can also be triggered by hand) and the normal firmware is build as usual with a <strong>git clean -f -d -x</strong> at the beginning.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/openwrt-split-toolchain-for-faster-firmware-build-times/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Syntax Highlighting in HTML mit VIM</title>
		<link>http://blog.mcbachmann.de/linux/programming/syntax-highlighting-in-html-mit-vim</link>
		<comments>http://blog.mcbachmann.de/linux/programming/syntax-highlighting-in-html-mit-vim#comments</comments>
		<pubDate>Sat, 13 Mar 2010 06:53:56 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[syntax highlighting]]></category>
		<category><![CDATA[vim]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=502</guid>
		<description><![CDATA[Hin und wieder möchte ich ein Stück Quellcode online stellen und dies nach Möglichkeit auch mit Syntax Highlighting. Unter WordPress gibt es dafür Plugins, jedoch für meine normale Website hatte ich dafür noch kein PHP Tool und so machte ich mich auf die Suche nach statischen Renderern, obwohl die Lösung zum Greifen nah lag. Mein [...]]]></description>
			<content:encoded><![CDATA[<p>Hin und wieder möchte ich ein Stück Quellcode online stellen und dies nach Möglichkeit auch mit Syntax Highlighting. Unter WordPress gibt es dafür Plugins, jedoch für meine normale <a href="http://www.mcbachmann.de/">Website</a> hatte ich dafür noch kein PHP Tool und so machte ich mich auf die Suche nach statischen Renderern, obwohl die Lösung zum Greifen nah lag.<span id="more-502"></span></p>
<p>Mein bevorzugter Editor VIM besitzt selbst ja ein sehr gut funktionierendes Syntax Highlighting &#8211; also müsste man dieses jetzt noch in HTML-Form bringen. Nichts leichter als das. Man geht einfach in den Kommandomodus und tippt den Befehl:</p>
<blockquote><p><code>:TOhtml</code></p></blockquote>
<p>Anschließend öffnet sich ein Splitscreen wo das HTML angezeigt wird und man es in den bereits voreingestellten Dateinamen speichern kann.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/programming/syntax-highlighting-in-html-mit-vim/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>make: just a remark for filter-out</title>
		<link>http://blog.mcbachmann.de/linux/programming/make-just-a-remark-for-filter-out</link>
		<comments>http://blog.mcbachmann.de/linux/programming/make-just-a-remark-for-filter-out#comments</comments>
		<pubDate>Fri, 26 Feb 2010 07:20:04 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[make]]></category>
		<category><![CDATA[typo]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=497</guid>
		<description><![CDATA[In Makefiles there is a nice command, called filter-out. This command takes 2 Arguments: first, the needle you want to filter out, second the haystack where it is in. This was exactly what I needed. But everytime I tried it, it returned an empty string. The solution was too easy&#8230; make doesn&#8217;t complain if you [...]]]></description>
			<content:encoded><![CDATA[<p>In Makefiles there is a nice command, called <strong>filter-out</strong>. This command takes 2 Arguments: first, the needle you want to filter out, second the haystack where it is in.<br />
This was exactly what I needed. But everytime I tried it, it returned an empty string. The solution was too easy&#8230; make doesn&#8217;t complain if you write it with an underscore instead of a hyphen &#8211; and in <em>makepp</em> its written with a dash, so you will also get good looking Google results <img src='http://blog.mcbachmann.de/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Thanks to <a href="http://osdir.com/ml/gnu.make.bugs/2006-10/msg00022.html">Philip on gnu.make.bugs</a> for pointing this out.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/programming/make-just-a-remark-for-filter-out/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript: numbers with decimal (thousand) separator</title>
		<link>http://blog.mcbachmann.de/linux/programming/javascript-numbers-with-decimal-thousand-separator</link>
		<comments>http://blog.mcbachmann.de/linux/programming/javascript-numbers-with-decimal-thousand-separator#comments</comments>
		<pubDate>Wed, 17 Feb 2010 10:55:11 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[programming]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[WWW]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=488</guid>
		<description><![CDATA[Today, I needed a JavaScript function that converts a number like 1234567 to something more beautiful like 1.234.567. And because I didn&#8217;t need to take notice of locale settings (like using a comma instead of a dot) most solutions on the web where just too much for me and I decided to write my own. [...]]]></description>
			<content:encoded><![CDATA[<p>Today, I needed a JavaScript function that converts a number like 1234567 to something more beautiful like 1.234.567. And because I didn&#8217;t need to take notice of locale settings (like using a comma instead of a dot) most solutions on the web where just too much for me and I decided to write my own.<span id="more-488"></span></p>
<p>Mainly its a 3-liner, but packed in a function it becomes a little more. Feel free to use it for your own:</p>
<blockquote><p><code>function thousand_sep(nr) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;var nr_tmp = nr.toString();<br />
&nbsp;&nbsp;&nbsp;&nbsp;for (var dots = Math.ceil((nr_tmp.length / 3) - 1); dots > 0; dots--) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nr_tmp = nr_tmp.substr(0, nr_tmp.length - (dots * 3)) + '.' +<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;nr_tmp.substring(nr_tmp.length - (dots * 3), nr_tmp.length);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;return (nr_tmp);<br />
}</code></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/programming/javascript-numbers-with-decimal-thousand-separator/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In Brief: Linux 2.6.32 &#8211; KSM and KVM</title>
		<link>http://blog.mcbachmann.de/linux/in-brief-linux-2-6-32-ksm-and-kvm</link>
		<comments>http://blog.mcbachmann.de/linux/in-brief-linux-2-6-32-ksm-and-kvm#comments</comments>
		<pubDate>Fri, 01 Jan 2010 21:53:56 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[In Brief]]></category>
		<category><![CDATA[KSM]]></category>
		<category><![CDATA[KVM]]></category>
		<category><![CDATA[Virtualisation]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=459</guid>
		<description><![CDATA[Can you imagine to have 52 Windows XP virtual machines &#8211; 1GB RAM each &#8211; running on a server with just 16GB? Ok, sounds a lot&#8230; but we are near the 16GB barrier. Anyway, this is one of the features in the new 2.6.32 release. Its called Kernel Samepage Merging, KSM. The approach is you [...]]]></description>
			<content:encoded><![CDATA[<p>Can you imagine to have 52 Windows XP virtual machines &#8211; 1GB RAM each &#8211; running on a server with just 16GB? Ok, sounds a lot&#8230; but we are near the 16GB barrier. Anyway, this is one of the features in the new 2.6.32 release. Its called <strong>K</strong>ernel <strong>S</strong>amepage <strong>M</strong>erging, KSM. <span id="more-459"></span></p>
<p>The approach is you start more than one VM and tell the kernel that they probably will use identically memory segments. Than the kernel scans for them and if one is found, it will be kind of hardlinked and the double memory will be freed &#8211; imagine that for a lot of same (eg. WinXP) VMs. But its not only useable for KVM &#8211; you can use the syscall wherever you think its applicable and is not already done via a shared library.</p>
<p>More information on KSM can be found at <a href="http://kernelnewbies.org/LinuxChanges#head-d3f32e41df508090810388a57efce73f52660ccb">Linux Kernel Newbies</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/in-brief-linux-2-6-32-ksm-and-kvm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Strommessung: Analogen Zähler aufzeichnen und auswerten</title>
		<link>http://blog.mcbachmann.de/linux/strommessung-analogen-zahler-aufzeichnen-und-auswerten</link>
		<comments>http://blog.mcbachmann.de/linux/strommessung-analogen-zahler-aufzeichnen-und-auswerten#comments</comments>
		<pubDate>Fri, 11 Dec 2009 21:58:47 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[private]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Diagramm]]></category>
		<category><![CDATA[Strom]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=443</guid>
		<description><![CDATA[Messwerte erfassen, speichern und auswerten &#8211; in der Industrie gang und gäbe, im Privathaushalt eher kaum zu finden. Da es doch für manche interessant ist zum Beispiel den Stromverbrauch täglich zu sehen und eventuell große Verbraucher ausfindig zu machen wäre es nun auch schön, einen handelsüblichen Zähler zu digitalisieren. Die Stromwerke machen es einem dabei [...]]]></description>
			<content:encoded><![CDATA[<p>Messwerte erfassen, speichern und auswerten &#8211; in der Industrie gang und gäbe, im Privathaushalt eher kaum zu finden. Da es doch für manche interessant ist zum Beispiel den Stromverbrauch täglich zu sehen und eventuell große Verbraucher ausfindig zu machen wäre es nun auch schön, einen handelsüblichen Zähler zu digitalisieren. Die Stromwerke machen es einem dabei jedoch meist nicht einfach. <span id="more-443"></span></p>
<p><a href="http://blog.mcbachmann.de/wp-content/uploads/2009/12/Drehstromzaehler_01_KMJ.png"><img src="http://blog.mcbachmann.de/wp-content/uploads/2009/12/Drehstromzaehler_01_KMJ.png" alt="Drehstromzaehler_01_KMJ" title="Drehstromzaehler_01_KMJ" width="124" height="200" class="alignleft size-full wp-image-444" /></a></p>
<p>Im Normalfall gilt es, dass man vor jeglicher Auswertung erst einmal den kleinen roten Punkt auf einer sich rotierenden Scheibe erkennen muss. Nach einer Idee von <a href="http://www.dietmar-schroeder.de/gaswasserstrom.html#st">Dietmar Schröder</a> hat das ganze dann der Vater eines Freundes realisiert.</p>
<p>Um die Messwerte in den PC zu bekommen, haben wir uns eines Eingangs-Pins der seriellen Schnittstelle bedient (CTS &#8211; Clear To Send). Damit verbunden natürlich der Aufwand, das Signal für eine 1 in eine positive Spannung und für 0 in eine negative Spannung zu wandeln. Das wurde jedoch mit Bravour gelöst, so dass die Softwareseite dann nur noch Messfehler abfangen brauchte (d.h. bei einem Messzeitraum von 100ms und einer Abtastrate von 10ms muss mindestens 7x ein Zustand vorkommen bevor er übernommen wird).<br />
<br/><br />
Am Ende schaut das Ganze dann so aus (das Diagramm ist ein <a href="http://teethgrinder.co.uk/open-flash-chart-2/">Open Flash Chart 2</a>):</p>
<p><a href="http://blog.mcbachmann.de/wp-content/uploads/2009/12/Strommessung.jpg"><img src="http://blog.mcbachmann.de/wp-content/uploads/2009/12/Strommessung-300x273.jpg" alt="Strommessung" title="Strommessung" width="300" height="273" class="aligncenter size-medium wp-image-446" /></a><br />
<br/><br />
Wenn es die Zeit nach den Festtagen zulässt, werde ich eventuell die Softwarequellen dazu veröffentlichen.</p>
<p>Bildquelle: <a href="http://de.wikipedia.org/wiki/Datei:Drehstromzaehler_01_KMJ.jpg">Wikipedia: Drehstromzaehler 01 KMJ.jpg</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/strommessung-analogen-zahler-aufzeichnen-und-auswerten/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>arm: remove thumb instruction &#8220;bx lr&#8221; from EABI binary</title>
		<link>http://blog.mcbachmann.de/linux/arm-remove-thumb-instruction-bx-lr-from-eabi-binary</link>
		<comments>http://blog.mcbachmann.de/linux/arm-remove-thumb-instruction-bx-lr-from-eabi-binary#comments</comments>
		<pubDate>Mon, 14 Sep 2009 04:59:01 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[arm]]></category>
		<category><![CDATA[eabi]]></category>
		<category><![CDATA[gcc]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[thumb]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=387</guid>
		<description><![CDATA[Today I had a strange error using the GCC version 4.4.1 with EABI support on a non thumb-ARMv4. Everytime I compiled something, with and w/o the -mno-thumb-interwork parameter it also contained the bx lr instruction which is only for later ARM processors with thumb support. The only solution seemed to be to patch the GCC. [...]]]></description>
			<content:encoded><![CDATA[<p>Today I had a strange error using the GCC version 4.4.1 with EABI support on a non thumb-ARMv4. Everytime I compiled something, with and w/o the <em>-mno-thumb-interwork</em> parameter it also contained the <strong>bx lr</strong> instruction which is only for later ARM processors with thumb support.<span id="more-387"></span></p>
<p>The only solution seemed to be to patch the GCC. Urgs&#8230; not really a nice solution, because recompiling GCC takes 3 stages and much time. After lots of googling I finally found the solution in the <a href="http://wiki.debian.org/ArmEabiPort#Otherscenarios">Debian Wiki</a>.</p>
<p>GCC will always compile the new <strong>bx lr</strong> instruction and its the assemblers and linkers part to replace it with a normal call on normal ARMs. The problem is&#8230; GCC doesn&#8217;t tell the assembler/linker that it needs to do it. So we have to do it:</p>
<blockquote><p><code>CFLAGS += -Xlinker --fix-v4bx -Xassembler --fix-v4bx</code></p></blockquote>
<p><br/></p>
<hr/>
<br/><br />
<em>Later on&#8230;</em> It seemed that a lot of apps in OpenWrt didn&#8217;t respect my compiler flags, so I needed to patch GCC. You can find the result here: <strong><a href="https://lists.openwrt.org/pipermail/openwrt-devel/2009-September/005018.html">gcc 4.4.1: ARM &#8211; save fix-v4bx flag in linker spec</a></strong> (patch is agains OpenWrt). The plain patch against GCC 4.4.1 is here: <strong><a href='http://blog.mcbachmann.de/wp-content/uploads/2009/09/gcc-save-fix-v4bx-for-linker.patch'>gcc-save-fix-v4bx-for-linker.patch</a></strong>. If it turns out that this is the correct kind to do it, I&#8217;ll send it to the GCC list.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/arm-remove-thumb-instruction-bx-lr-from-eabi-binary/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>uClibc: &#8220;bx r6&#8243; compile error on ARM</title>
		<link>http://blog.mcbachmann.de/linux/uclibc-bx-r6-compile-error-on-arm</link>
		<comments>http://blog.mcbachmann.de/linux/uclibc-bx-r6-compile-error-on-arm#comments</comments>
		<pubDate>Tue, 08 Sep 2009 08:31:59 +0000</pubDate>
		<dc:creator>Sven Bachmann</dc:creator>
				<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[arm]]></category>
		<category><![CDATA[gcc]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[uClibc]]></category>

		<guid isPermaLink="false">http://blog.mcbachmann.de/?p=380</guid>
		<description><![CDATA[While compiling OpenWrt for an ARM compatible processor I got the following error: {standard input}: Assembler messages: {standard input}:39: Error: selected processor does not support `bx r6' I found the solution in the The definitive guide to GCC book from William Von Hagen (I don&#8217;t own it, I found it via Google Books). You have [...]]]></description>
			<content:encoded><![CDATA[<p>While compiling OpenWrt for an ARM compatible processor I got the following error:<br />
<br/></p>
<blockquote><p><code>{standard input}: Assembler messages:<br />
{standard input}:39: Error: selected processor does not support `bx r6' </code></p></blockquote>
<p><br/><br />
I found the solution in the <strong>The definitive guide to GCC</strong> book from <em>William Von Hagen</em> (I don&#8217;t own it, I found it via Google Books). You have to disable the the USE_BX flag in the uClibc config file and everything will be fine.<span id="more-380"></span><br />
<br/><br />
To make it permanent, go to <em>toolchain/uClibc/config-*</em> (* is your used uClibc version) and copy the default <em>arm</em> file to <em>arm.ARCH</em> where ARCH is the name of the directory in <em>target/linux/ARCH</em>.</p>
<p>Thanks to William, the OpenWrt community and the uClibc folks (and all others who make this a round thing).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mcbachmann.de/linux/uclibc-bx-r6-compile-error-on-arm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

