[[PageOutline(2-3)]] = Requirements = == Hardware == === Wireless Card === * A PCI/miniPCI or Cardbus card with an [http://www.atheros.com Atheros] chipset. * Please refer to [wiki:Compatibility] on which wireless cards are supported by the MadWifi driver. === Architecture === * Please refer to [wiki:Architecture] for the list of supported systems for MadWifi. == Software == * '''root''' privileges for the machine on which you intend to install MadWifi. * For Debian, Ubuntu and related systems run as root: {{{apt-get install build-essential perl}}} * For Red Hat, Fedora and related systems run as root: {{{yum install gcc make perl}}} * Generally, make sure you have gcc, libc headers, make and perl === Kernel === * Linux Kernel '''2.4.23+''' and '''2.6.x''' series * Others may work, but are unsupported; also, beware if using the very latest release candidate (RC#) kernel as it may not yet be supported * Kernel Source and Headers of running kernel (distribution provided kernel development package should be OK) * Wireless Extensions support in kernel * v14+ required, v17+ recommended; option '''CONFIG_NET_RADIO=y''' (kernel 2.6.22 and later: CONFIG_WLAN_80211=y) * Sysctl support in kernel * option '''CONFIG_SYSCTL=y''' * Crypto API support in kernel * option '''CONFIG_CRYPTO=y''' * AES support (for WPA networks) * option '''CONFIG_CRYPTO_AES=m''' Use cat /boot/config-2.6.26-1-686 grep CONFIG_CRYPTO_AES Use the [wiki:UserDocs/KernelConfig kernel config guide] to help set these kernel options. === Building the driver === * '''gcc''' -- The same GCC version used to compile the kernel * otherwise, "Invalid module format" errors may occur * '''subversion''' -- If you choose to get the most recent MadWifi code, you'll need to check it out of our [http://subversion.tigris.org Subversion] repository. * '''make''' -- Used to automatically build programs. * '''perl''' -- Used by Madwifi Makefile to generate code * '''C libraries''' -- Standard C libraries needed for successful compilation (Type: sudo apt-get install build-essential) * '''madwifi''' -- [wiki:UserDocs/GettingMadwifi Download] the latest MadWifi driver. === Configuring the wireless card === * '''iwconfig''' -- Used to connect to a wireless network; often called [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html wireless-tools] by distributions. * '''wpa_supplicant''' -- Used to join a network with WPA encryption; often called [http://hostap.epitest.fi/wpa_supplicant/ wpasupplicant] by distributions. Please check your [wiki:UserDocs/Distro Linux distribution] for more specific information.