=== Requirements ===

 * OpenSSL development package or libgcrypt development package
 * If you want SSID filtering with regular expression  in airodump-ng,
   pcre development package is required (pcre on FreeBSD).
 * If you want to use airolib-ng and '-r' option in aircrack-ng,
   SQLite development package >= 3.3.17 (3.6.X version or better is recommended):
   -  libsqlite3-dev on a Debian based distro (sqlite3 on FreeBSD)
 * On windows, cygwin has to be used and it also requires w32api.
 * If you want to use Airpcap, the 'developer' directory from the CD is required.
 * Linux: LibNetlink 1 or 3. It can be disabled by setting the flag 'libnl' to false.
          See Makefile flags below.
 * pkg-config (pkgconf on FreeBSD)
 * FreeBSD: gmake

=== Compiling ===

 * Compilation:
    make

 * Compilation on FreeBSD:
    gmake CC=cc

 * Strip debugging symbols:
    make strip

 * Installing:
    make install

 * Uninstall:
    make uninstall

==== Makefile flags ====

When compile and installing, the following flags can be used and combined
to compile and install the suite:

* sqlite:   needed to compile airolib-ng and add support for airolib-ng
            databases in aircrack-ng.

* airpcap:  needed for supporting airpcap devices on windows (cygwin only)
            REQUIREMENT: Copy 'developers' directory from Airpcap CD one 
                         level below this INSTALLING file
            Note: Not working yet.

* experimental: needed to compile tkiptun-ng, easside-ng (and buddy-ng),
                wesside-ng and besside-ng.
                If you want to build besside-ng-crawler, you will need
                LibPCAP (development package). On Debian based
                distributions: libpcap-dev

* ext_scripts: needed to build airoscript-ng, versuck-ng, airgraph-ng and 
            airdrop-ng. 
            Note: Experimental. Each script has its own dependences.
            Note: It's only required in install phase.

* gcrypt:   Use libgcrypt crypto library instead of the default OpenSSL.
            And also use internal fast sha1 implementation (borrowed from GIT)

* libnl:    Add support for netlink (nl80211). Linux only. Requires libnl1 OR libnl3.
            Enabled by default. Dependencies (debian):
		LibNL 1: libnl-dev 
		LibNL 3: libnl-3-dev and libnl-genl-3-dev.

* pcre:	    Add support for regular expression matching for ESSID in airodump-ng and besside-ng.
            Dependencies (debian): libpcre3-dev

* duma:     Compile with DUMA support. DUMA is a library to detect buffer overruns and under-runs.
            Dependencies (debian): duma

Example:

  * Compiling:
    make sqlite=true experimental=true pcre=true

  * Compiling with gcrypt
    make gcrypt=true

  * Installing:
    make sqlite=true pcre=true experimental=true install

  * Installing, with external scripts:
    make sqlite=true pcre=true experimental=true ext_scripts=true

=== Using precompiled binaries ===

Linux/BSD:
 * Use your package manager to download aircrack-ng
 * In most cases, they have an old version.
 
Windows:
 * Install the appropriate "monitor" driver for your card (standard drivers doesn't work for capturing data).
 * aircrack-ng suite is command line tools. So, you have to open a commandline
   (Start menu -> Run... -> cmd.exe) then use them
 * Run the executables without any parameters to have help
