Compiling DD-WRT sources

From DD-WRT Wiki

(Redirected from Compiling DD-WRT Sources)
Jump to: navigation, search

[edit] New Instructions

More streamlined, up-to-date instructions with automated scripts can be found here Building_From_Source.

[edit] Old Instructions <deprecated>

Install a LINUX-System like KNOPPIX and open a root shell (or become "root" by issuing "su" and type your root password), then issue the following commands (the example uses the "0528-2006-svn2242.snapshot.tar.bz2" source distribution)

cd /
mkdir /home/dd-wrt
cd /home/dd-wrt
tar -xjvf toolchains.x86.debian.sp1.tar.bz2
mv /home/dd-wrt/toolchains/3.4.6-uclibc-0.9.28 /home/dd-wrt/toolchains/3.4.6
mv /home/dd-wrt/toolchains/4.1.0-uclibc-0.9.28 /home/dd-wrt/toolchains/4.1.0
cd /home/dd-wrt
mkdir /home/dd-wrt/snapshot
cd /home/dd-wrt/snapshot
tar -xjvf 0528-2006-svn2242.snapshot.tar.bz2
cd /home/dd-wrt/snapshot/DD-WRT/opt
ln -s libgcc/ 
cd /home/dd-wrt/snapshot/DD-WRT/src/linux
ln -s brcm/linux.v23
ln -s brcm/linux.v24
ln -s brcm/linux.v23 linux
cd /home/dd-wrt
mkdir /home/dd-wrt/image
ln -s /home/dd-wrt/image /GruppenLW
cd /home/dd-wrt/snapshot/DD-WRT/opt
then start compiling with
your images should be in
32bit operating system
Howto compile dd-wrt on a 32bit operating system.

Compilation stops, because mksquashfs-lzma is a 64bit file. Can't execute file....

BrainSlayer added the source code for mksquashfs-lzma to the current svn. So it only needs to be 
compiled on your 32bit OS. Please install toolchain 3.4.6 on your system.

step 1:
mkdir /home/dd-wrt/tools
cd /home/dd-wrt/tools

step 2:
svn co svn://


take a look at ./DD-WRT/src/squashfs-tools (included in new snapshots)

step 3:
source code of mksquashfs-lzma should be in /home/dd-wrt/tools/squashfs-tools

step 4:
cd /home/dd-wrt/tools/squashfs-tools

step 5:
create a shell script -> vi


export PATH=/home/dd-wrt/toolchains/3.4.6/bin:$PATH

save -> ESC ; wq!

step 6:
start compiling "./

step 7:
copy mksquashfs-lzma to the right directory

cp mksquashfs-lzma /home/dd-wrt/snapshot/DD-WRT/src/linux/linux.v23/scripts/squashfs/