| 1 | $Id$ |
|---|
| 2 | |
|---|
| 3 | OpenWRT specific README |
|---|
| 4 | ======================= |
|---|
| 5 | |
|---|
| 6 | So, you want to run wifidog on one of linksys's WRT wireless routers! |
|---|
| 7 | |
|---|
| 8 | OpenWRT is the embedded linux-gnu bundle that runs on the linksys WRT |
|---|
| 9 | series routers (among numerous others). |
|---|
| 10 | |
|---|
| 11 | OpenWRT's home page is http://openwrt.org/ |
|---|
| 12 | |
|---|
| 13 | ---- I just want to RUN the thing: ---- |
|---|
| 14 | -DO NOT use the wifidog packages distributed by OpenWRT (you are asking for trouble, they are broken in various ways; you will get no support if you do) |
|---|
| 15 | -Use the official wifidog packages on sourceforge (currently only available for whiterussian. |
|---|
| 16 | |
|---|
| 17 | ---- I want to develop and test on OpenWRT ---- |
|---|
| 18 | |
|---|
| 19 | To build wifidog so that it may be run on the linksys wrt routers you |
|---|
| 20 | must first obtain the OpenWRT toolchain. This toolchain is a set of |
|---|
| 21 | compilers and other software development tools that will allow you, |
|---|
| 22 | running on your intel/pentium/mac computer to compile and develop software |
|---|
| 23 | that is to run on the mips based linksys wrt series routers, which is |
|---|
| 24 | based on another computer cpu chip entirely. |
|---|
| 25 | |
|---|
| 26 | You have several options for building wifidog using the OpenWRT toolchain. |
|---|
| 27 | |
|---|
| 28 | Option 1. get the prebuilt, minimal OpenWRT toolchain (The OpenWRT SDK), and give the makefile it's path. This is the best option, assuming you have a x86_64 Os (the SDK is distributed only for x86_64). |
|---|
| 29 | |
|---|
| 30 | For OpenWRT 0.9 (Whiterussian): |
|---|
| 31 | cd ~ |
|---|
| 32 | wget http://downloads.openwrt.org/whiterussian/newest/OpenWrt-SDK-Linux-i686-1.tar.bz2 |
|---|
| 33 | tar -jxvf OpenWrt-SDK-Linux-i686-1.tar.bz2 |
|---|
| 34 | cd wifidog |
|---|
| 35 | make whiterussianipk OPENWRTSDK=~/OpenWrt-SDK-Linux-i686-1/ |
|---|
| 36 | |
|---|
| 37 | For OpenWRT Kamikaze up till 7.09: |
|---|
| 38 | cd ~ |
|---|
| 39 | wget http://downloads.openwrt.org/kamikaze/7.09/brcm-2.4/OpenWrt-SDK-brcm-2.4-for-Linux-x86_64.tar.bz2 |
|---|
| 40 | tar -jxvf OpenWrt-SDK-brcm-2.4-for-Linux-x86_64.tar.bz2 |
|---|
| 41 | cd wifidog |
|---|
| 42 | make kamikazeipk OPENWRTSDK=~/OpenWrt-SDK-brcm-2.4-for-Linux-x86_64 |
|---|
| 43 | |
|---|
| 44 | For OpenWRT Kamikaze 8.09 and up, there is no SDK available and the 7.09 SDK does not work. So Option 1 is not an option. Option 2 is not an option either since building the SDK did not seem to work (https://forum.openwrt.org/viewtopic.php?id=17879). So jump to Option 3! |
|---|
| 45 | |
|---|
| 46 | If it works (!) you will have an ipkg file in $(OPENWRTSDK)/bin/packages/ |
|---|
| 47 | You can then boot up your OpenWrt |
|---|
| 48 | router, copy the .ipk to it, and install it using the ipkg commands. |
|---|
| 49 | |
|---|
| 50 | You should also make sure that the wifidog prereqs are already |
|---|
| 51 | installed on the router before you try to run wifidog. Note that if you build the |
|---|
| 52 | packages with the instructions above, they will download the required dependencies auomatically (if you have an internet connecion on yout router) and will refuse to install without them. |
|---|
| 53 | |
|---|
| 54 | The prereqs are: |
|---|
| 55 | * iptables command and modules mac, mark and MARK |
|---|
| 56 | * iptables kernel module mac |
|---|
| 57 | * libpthread |
|---|
| 58 | |
|---|
| 59 | These are all packages you can install on your running OpenWrt router |
|---|
| 60 | using the ipkg commands. If the router is on the net, the ipkg |
|---|
| 61 | commands can download the packages from www.openwrt.org, just like |
|---|
| 62 | debian apt-get or fedora yum or up2date. |
|---|
| 63 | |
|---|
| 64 | Option 2. Build your own SDK (or find someone to do it for you) |
|---|
| 65 | cd ~ |
|---|
| 66 | wget http://downloads.openwrt.org/kamikaze/7.09/kamikaze_7.09.tar.bz2 |
|---|
| 67 | tar -jxvf kamikaze_7.09.tar.bz2 |
|---|
| 68 | cd kamikaze_7.09 |
|---|
| 69 | make menuconfig #(Make sure you build the SDK in "special targets") |
|---|
| 70 | make #(could take hours downloading and compiling all dependencies) |
|---|
| 71 | Follow the instructions in Option 1, using the SDK you build instead of downloading it. |
|---|
| 72 | |
|---|
| 73 | Option 3. Use the full buildroot directly (time consuming...) |
|---|
| 74 | cd wifidog |
|---|
| 75 | make dist |
|---|
| 76 | cd ~ |
|---|
| 77 | wget http://downloads.openwrt.org/kamikaze/7.09/kamikaze_7.09.tar.bz2 |
|---|
| 78 | tar -jxvf kamikaze_7.09.tar.bz2 |
|---|
| 79 | cp -R wifidog/contrib/build-openwrt-kamikazeipk/wifidog kamikaze_7.09/package/ |
|---|
| 80 | cp wifidog/wifidog-1.1.5.tar.gz kamikaze_7.09/dl/ |
|---|
| 81 | cd kamikaze_7.09 |
|---|
| 82 | make menuconfig #(Follow instructions on OpenWRT's site to setup your buildroot for your platform) |
|---|
| 83 | make #(could take hours downloading and compiling all dependencies) |
|---|
| 84 | |
|---|
| 85 | For Kamikaze 8.09 and up, there is an extra dependency to add to the package, so here would be the new procedure |
|---|
| 86 | cd wifidog |
|---|
| 87 | make dist |
|---|
| 88 | cd ~ |
|---|
| 89 | wget http://downloads.openwrt.org/kamikaze/8.09/kamikaze_8.09.tar.bz2 |
|---|
| 90 | tar -jxvf kamikaze_8.09.tar.bz2 |
|---|
| 91 | cp -R wifidog/contrib/build-openwrt-kamikazeipk8.09up/wifidog kamikaze_8.09/package/ |
|---|
| 92 | cp wifidog/wifidog-1.1.5.tar.gz kamikaze_8.09/dl/ |
|---|
| 93 | cd kamikaze_8.09 |
|---|
| 94 | make menuconfig #(Follow instructions on OpenWRT's site to setup your buildroot for your platform) |
|---|
| 95 | make #(could take hours downloading and compiling all dependencies) |
|---|
| 96 | |
|---|