INSTALL 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. 1 Requirements
  2. 1.1 Operating system
  3. Linux:
  4. - Linux kernel 2.6. Kernel 2.4 will work, but performance will suffer.
  5. - tested on x86, x86_64 and ARM architectures. Not tested on any big-endian architecture.
  6. Windows:
  7. - Windows XP or newer; tested on Windows XP and Windows 7
  8. FreeBSD:
  9. - Not regularly tested.
  10. Other systems are not supported.
  11. 1.2 Compilers
  12. Linux:
  13. - gcc
  14. - clang
  15. Windows:
  16. - gcc from the mingw-w64 project for 32-bit targets
  17. - clang, properly built with mingw-w64, using mingw headers/libs
  18. C language features used:
  19. - Standard (all part of C99):
  20. - designated initializers
  21. - stdint.h, inttypes.h, stddef.h
  22. - intermingled declarations and code
  23. - for loop initial declaration
  24. - one-line "//" comments
  25. - Extensions:
  26. - packed structure attribute (to pack a structure and allow unaligned access)
  27. 1.3 CMake
  28. The build system uses CMake.
  29. 1.4 OpenSSL
  30. Libcrypto (part of OpenSSL) is used for block ciphers, hash functions and random data generation.
  31. 1.5 Network Security Services (NSS)
  32. The NSS library from Mozilla is used for TLS support. NSS command-line tools are also needed
  33. for setting up certificates.
  34. 1.6 TAP-Win32 (Windows only) (runtime only)
  35. The TAP-Win32 driver, part of OpenVPN.
  36. 2 Compilation
  37. 2.1 Compiling on Linux
  38. $ tar xf badvpn-<version>.tar.bz2
  39. $ mkdir build
  40. $ cd build
  41. $ cmake ../badvpn-<version> -DCMAKE_INSTALL_PREFIX=/usr/local
  42. $ make
  43. If you want to install it, run as root:
  44. # make install
  45. 2.2 Compiling for Windows
  46. See the file INSTALL-WINDOWS for detailed instructions.
  47. 3 Usage
  48. The primary documentation is on the BadVPN homepage, http://code.google.com/p/badvpn/ .
  49. Additionally, some man pages are installed (badvpn(7), badvpn-server(8), badvpn-client(8)).