Building an ARM cross-toolchain with binutils, gcc, newlib, and gdb from source

Update: Please don't use this script, a fixed and updated version is now maintained in the summon-arm-toolchain git repo. Direct download: summon-arm-toolchain.

I've been planning to write about building custom ARM toolchains for a while (I used stuff from in the past, but I switched to the lastest and greatest upstream versions at some point). Among other things, recent upstream versions now have ARM Cortex support.

First you will need a few base utilities and libs (this list may not be complete):

  $ apt-get install flex bison libgmp3-dev libmpfr-dev libncurses5-dev libmpc-dev autoconf texinfo build-essential

Then you can use my tiny build-arm-toolchain script, which will download, build, and install the whole toolchain:

  $ cat build-arm-toolchain
  # Written by Uwe Hermann <>, released as public domain.

Update: Please don't use this script, a fixed and updated version is now maintained in the summon-arm-toolchain git repo. Direct download: summon-arm-toolchain.

The final toolchain is located in /tmp/arm-cortex-toolchain per default, and is ca. 170 MB in size. I explicitly created the build script in such a way that it minimizes the amount of disk space used during the build (ca. 1.2 GB or so, compared to more than 3 GB in the "naive" approach).

Using the "-j 2" option for make (see script) you can speed up the build quite a bit on multi-core machines (ca. 30 minutes vs. 60 minutes on an AMD X2 dual-core box). Also, you can change the script to build for other target variants if you want to (arm-elf or arm-none-eabi, for example).

Checkout the blog entry How to build arm gnu gcc toolchain for Mac OS X by Piotr Esden-Tempski for similar instructions for Mac OS X users.

Oh, and while I'm at it — does anybody have any idea why there are no pre-built toolchains for embedded (microcontroller) ARM targets in Debian? There are some toolchains for other microcontroller architectures (avr, m68hc1x, h8300, z80) but not too much other stuff. Is there some specific reason for the missing ARM toolchains (other than "nobody cared enough yet")?

I have heard about Emdebian, but from a quick look that seems to be more intended for toolchains with Linux/libc, not for microcontroller firmware (i.e. no MMU, no Linux, no libc etc.), but maybe I'm wrong?

Update: Please don't use this script, a fixed and updated version is now maintained in the summon-arm-toolchain git repo. Direct download: summon-arm-toolchain.

Linux Videoblog Clients Roundup [Update]

Hanno Böck asks which free clients are available for receiving and subscribing to video podcasts, videoblogs, vlogs, vodcasts or whatever you want to call them.

I was asking myself the same question for a number of reasons lately, and here's what I have found:

  • Armangil's vodcatcher is a video podcast client for the command line. Written in Ruby, cross-platform, GPL'd, no GUI (obviously).
  • PenguinTV, an RSS feed reader which supports podcasts and video blogs. Written in Python, cross-platform, GPL'd, GTK+ GUI.
  • kmplayer, proposed by Hanno Böck. Haven't tested it, yet.
  • DTV (DemoTV), a "free and open-source platform for internet television and video. An intuitive interface lets users subscribe to channels, watch video, and build a video library". This looks like the most mature client right now (for Mac at least), and it has been ported to Linux just yesterday. It's written in Python, cross-platform, GPL'd, GTK+ GUI. I have filed an ITP and hope to have a Debian package ready in a few days. The DTV Linux code itself is pretty beta, any helping hands with porting would be nice (contact Nick Nassar and/or the devel mailinglist).
  • Kitty, a podcast and videocast client for KDE. Written in C++, GPL'd, Qt/KDE GUI.

As for the content, there's lots of videoblogs out there, and I will blog about that in more detail later on. As an appetizer, you can now subscribe to the new (German) Tagesschau Video Podcast (thanks Tim Pritlove).

Update 2005-11-14: Added Kitty.

I ordered the new video iPod today

Yes, that's right. I have ordered one of those shiny new video iPods today.

I was never impressed too much by all this Apple hype going on all around me. In fact, I have never owned any Apple product (no iPod {photo|nano|shuffle|*}, no powerBook, no iBook, no iMac, no Mac mini). Until now. I simply couldn't resist to replace my 256 MB noname MP3 player with the full-blown 30 GB of the iPod (the 60 GB version costs way too much for my taste). See the specs for more technical details on the new iPod.

Apart from the usual iPod features you all know, this one's supposed to be thinner, can display photos and (the major improvement) videos. Yes, it's only 320x240, but it's videos. This thing will initiate a huge video blogging / videocasting wave, and those vlogs will soon become as popular as podcasts are today, I'm sure.

I hope to get my hands on that thingy in a bit more than a week (shipping takes a few days, it seems). I already have a lot of things on my mind, which I'm gonna do with it:

  • listen to a huge bunch of podcasts
  • watch various vlogs (btw, older models can play videos, too, if you ask nicely)
  • store some photos on it to show off to relatives and friends
  • record various stuff using the built in 44.1 kHz stereo recorder (think podcasting, for example)
  • try out some of those 50 fun things to do with your iPod
  • install iPodLinux / podzilla on it (you've been waiting for this, haven't you?). The new video iPod is not (yet) supported, so I might contribute a few patches, but don't take my word for it.
  • oh, and I might use it to listen to music from time to time, too ;-)

If you have any suggestions for more geeky things I could be (ab)using it for (think john the ripper on iPod and similar things), don't hesitate to write a comment! Hm, I might port bb to the iPod if nobody beats me to it...

How about an iPod Shuffle RAID?

Crazy Hacks Logo

Another Crazy Hacks candidate: Jim Wright has assembled four iPod Shuffles to create a 3.9 GB iPod Shuffle RAID. Have a look at the quite impressive photos.

Syndicate content