= Building open80211s on Ubuntu = This is a quick tutorial for building the {{{wireless-testing}}} kernel with open80211s enabled on [http://www.ubuntu.com/ Ubuntu]. More official Ubuntu-specific details are available on the [https://help.ubuntu.com/community/Kernel/Compile Ubuntu Wiki]. == Prerequisites == You need the following packages to build the kernel and make kernel packages: {{{ $ sudo apt-get install -y fakeroot build-essential git-core kernel-package }}} To use menuconfig, you need ncurses: {{{ $ sudo apt-get install libncurses5 ncurses-dev }}} If you have not done it yet, clone the {{{wireless-testing}}} kernel tree: {{{ $ git clone git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-testing.git }}} == Configuring the kernel == Go to the wireless-testing directory and copy your current kernel's configuration: {{{ $ cd wireless-testing $ cp /boot/config-`uname -r` .config }}} and then update the configuration for the new kernel: {{{ $ make oldconfig }}} If you need to apply any patches to the kernel, do so now. Now run menuconfig (or your preferred configuration utility) and select at least the following options: * Networking -> Wireless -> Generic IEEE 802.11 Networking Stack (mac80211) * Enable mac80211 mesh networking (pre-802.11s) support Enable any device driver(s) that you need, for instance: * Device Drivers -> Network Device Support -> Wireless LAN -> ZyDAS ZD1211/ZD1211B USB-wireless support == Building the kernel == To build the kernel and make packages: {{{ $ fakeroot make-kpkg --initrd kernel_image kernel_headers }}} When this finishes, you should see two .deb packages (the kernel itself and its headers) one directory up from the wireless-testing directory. To install them: {{{ $ cd .. $ sudo dpkg -i linux-*.deb }}} This copies files into /boot, creates an entry in /boot/grub/menu.lst and installs the modules in /lib/modules. * If you are testing with Broadcom-based hardware, make sure that you have the correct [http://linuxwireless.org/en/users/Drivers/b43#firmwareinstallation b43 firmware] available. == Testing == You may now reboot into the new kernel (select it from the grub bootloader menu). See the rest of the [wiki:HOWTO-0.2.1 HOWTO] for instructions on trying out the mesh.