Complete guide to compiling OpenWRT

Regular reader [MS3FGX] recently wrote a guide to compiling OpenWRT from source. You may be wondering why directions for compiling an open source program warrant this kind of attention. The size and scope of the package make it difficult to traverse the options available to you at each point in the process, but [MS3FGX] adds clarity by discussion as much as possible along the way.

OpenWRT is an open source alternative firmware package that runs on may routers. It started as a way to unlock the potential of the Linksys WRT54G. But the versatility of the user interface, and the accessibility of the Linux kernel made it a must-have for any router. This is part of what has complicated the build process. There are many different architectures supported and you’ve got to configure the package to build for your specific hardware (or risk a bad firmware flash!).

You’ll need some hefty hardware to ease the processing time. The source package is about 300 MB but after compilation the disk usage will reach into the Gigabyte range. [MS3FGX] used a 6-core processor for compilation and it still took over 20 minutes for a bare-bones distribution. No wonder pre-built binaries are the only thing we’ve ever tried. But this is a good way to introduce yourself to the inner workings of the package and might make for a frustrating fun weekend project.

Comments

  1. unrealex says:

    Thanks MS3FGX. You ROCK!!

  2. MoFoQ says:

    it’s funny…it’s fairly easy to setup a build environment, grab sources, and compile OpenWRT.

    the one that people tend to have difficulties with (partially due to the lack of coherent and up-to-date instructions) is DD-WRT; man that thing is a nightmare to compile right.

    it does however still take a few gigabytes of space and 20+ minutes to compile (the build tools might not be SMP optimized though).

  3. DeKay says:

    On a related topic, I wrote up how I switched from DD-WRT to OpenWrt here:

    http://madscientistlabs.blogspot.com/2011/12/dd-wrt-is-dead-long-live-openwrt.html

  4. Nathan says:

    It is frustrating I can attest to that. Especially when your config is dead for no reason and you have to start from scratch.

    I was just now thinking about buying a decent PC so I can maybe compile faster. But with the given specs still taking 20 minutes to cross-compile I don’t think I have the budget to make my life much better.

    OpenWRT Is an amazing platform. I just wish they had more documentation on developing packages and a were a little more helpful in the forums. But they’re looking big picture now.

    • MS3FGX says:

      The documentation for adding packages to OpenWRT really is terrible.

      I will be writing a guide that explains how to cross compile and package your own applications for OpenWRT soon, I just wanted to start with a guide on building the core of OpenWRT as that’s a prerequisite anyway.

  5. Gerrit says:

    I use OpenWRT on a Seagate Dockstar to run FreeSwitch and FusionPBX. You aren’t limited to running this on a router. Write on my site how to compile, what packages you need etc.

  6. jc says:

    Good, good.. why not make a guide for compilling the Linux kernel next time? typing make menuconfig is just so freaking hard…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,597 other followers