Building From Source

From DD-WRT Wiki

Revision as of 22:25, 28 February 2006 by (Talk)
Jump to: navigation, search

Building DD-WRT from source

Building DD-WRT from source is quite a daunting task. There isn't much documentation on this process on the official site, although Peter Cardoe's site is indeed very helpful. Hopefully expanding on his work will make it an easier process for newbies like me.


To build DD-WRT, you need a Linux machine. It should work on any reasonably modern machine, as long as you have a compiler installed - note that this may not be strictly necessary but I haven't tried it any other way.

  • The first step is to download the proper source from the download page. Should be straightforward.
  • Next, unpack it into a directory of your choice by running tar jxvf FILENAME. Change to the directory that process creates, probably named "DD-WRT" or something similar.
  • Next we'll make a workspace directory and some needed by the build process. The name of the "toolchain" directory must be as shown. You may need to be "root" to create the first directory.
    • mkdir -p /home/dev/workspace /home/backup/mikrotik
    • ln -s ~yourusername/image /GruppenLW
    • ln -s /location/of/ddwrtdirectory /home/dev/workspace/DD-WRT
  • Next we change some permissions:
    • chmod +x src/router/iptables/extensions/.dccp-test
    • chmod +x src/router/iptables/extensions/.layer7-test
  • Change line 42 of src/router/zlib/Makefile:
    • prefix =/location/of/ddwrtdirectory/DD-WRT
  • chmod +wxxx src/router/samba
  • Change line 4 of opt/ from export PATH=/home/release/DD-WRT/toolchains/bin to export PATH=/location/of/ddwrtdirectory/DD-WRT/toolchains/bin.
  • Run opt/ Wish. Then wait a bunch.

This page is only marginally useful; you do a lot of work and end up with a stock firmware. You may also want to see modifying DD-WRT.