INSTALL 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  1. Very important note :
  2. -------------------
  3. This release of the Wireless Tools is not compatible with
  4. Wireless Extensions earlier than 9. Version 9 and 10 should work fine
  5. but are not recommended. Version 8 and earlier will not work.
  6. Kernels that support this version of the Wireless Tools are
  7. listed below. For all kernels before that, see at the end.
  8. You need :
  9. --------
  10. o Compiler and development environment
  11. o A kernel supporting wireless extensions version 11 or higher
  12. -> from 2.4.4 onward (including 2.6.X)
  13. Note : CONFIG_NET_RADIO must be enabled
  14. o (Optional) A Pcmcia package supporting Wireless Extension
  15. o A driver supporting wireless extensions
  16. -> Check my web pages for status of various drivers.
  17. Note : more recent kernels and drivers are likely to support
  18. more wireless extension features...
  19. Compile wireless tools :
  20. ----------------------
  21. In theory, a "make" should suffice to create the tools.
  22. Installation :
  23. ------------
  24. "make install" should do the right thing for you, and install
  25. the tools, their library and the man pages. You can also uninstall the
  26. tools via "make uninstall".
  27. Note that the default installation is in the directory
  28. '/usr/local/sbin'. This may not be in your path. Also, other version
  29. of the tools may exist on the system, so double check which version is
  30. the default and adjust your path as necessary.
  31. Create a local copy of the tools :
  32. --------------------------------
  33. By default, the package is built with iwlib as a dynamic
  34. library, and the tool will expect to use the default version of libiw
  35. on the system. This means you can't use the tools until they are
  36. properly installed.
  37. If you just want to experiment with a "local" version of the
  38. tools, you may want to pass the BUILD_STATIC flag to Makefile. It will
  39. create a self contained version of the tools.
  40. -------------
  41. make clean
  42. make BUILD_STATIC='y'
  43. -------------
  44. The resulting binary can be used in the compilation directory
  45. or installed in any place you like.
  46. Other useful Makefile options :
  47. -----------------------------
  48. PREFIX : where the tools will be installed (default : /usr/local)
  49. CC : Compiler to use (defaul : gcc)
  50. BUILD_STATIC : build tools with a static version of the wireless lib
  51. BUILD_NOLIBM : build tools without mathematical lib (slower)
  52. BUILD_STRIPPING : strip symbols from tools/lib.
  53. BUILD_WE_ESSENTIAL : remove less used and obsolete features.
  54. You can pass those options on the command line of make, or
  55. modify the top of the Makefile. You can also set them as environment
  56. variable, but this is not recommended.
  57. If you pass those options on the command line, you should pass
  58. the same command line options for all invocations of make ("make" and
  59. "make install").
  60. Memory footprint reduction :
  61. --------------------------
  62. The Wireless Tools are used in various embedded systems where
  63. memory footprint is a great concern. The Wireless Tools package offer
  64. multiple options to customise the compilation depending on the level
  65. of features you want.
  66. The list below details the must useful combinations of these
  67. options, from the largest footprint to the smallest. Footprint depend
  68. on lot's of factor and is purely indicative (version 29-pre7+, i386,
  69. glibc, gcc 3.3.5).
  70. 1) Static build
  71. Command line : make BUILD_STATIC='y'
  72. - : Largest footprint
  73. - : libiw not included (other third party tools may depend on it)
  74. Size : ~280 kB
  75. 2) Default build
  76. Command line : make
  77. + : Fully featured version of the tools
  78. - : Largest footprint (except for static version of tools)
  79. Size : ~190 kB (libiw : ~29 kB ; ifrename : ~29 kB)
  80. 3) Stripping (remove function symbols)
  81. Command line : make BUILD_STRIPPING='y'
  82. + : Fully featured version of the tools
  83. - : Still quite large
  84. Size : ~110 kB (libiw : ~23 kB ; ifrename : ~17 kB)
  85. 4) Multicall version (include stripping)
  86. Command line : make iwmulticall ; make install-iwmulticall
  87. + : Fully featured version of the tools
  88. + : Small
  89. - : libiw not included (other third party tools may depend on it)
  90. - : ifrename is not included
  91. Size : ~55 kB
  92. 5) Multicall + Essential
  93. Command line : make BUILD_WE_ESSENTIAL='y' iwmulticall
  94. + : Smaller
  95. - : Some less used features are left out
  96. - : libiw not included (other third party tools may depend on it)
  97. - : ifrename is not included
  98. Size : ~44 kB
  99. 6) iwconfig only + essential + static
  100. Command line : make BUILD_WE_ESSENTIAL='y' BUILD_STATIC='y' BUILD_STRIPPING='y' iwconfig
  101. + : Very small
  102. - : Very limited functionality : no scanning, no event, no iwpriv
  103. - : libiw not included (other third party tools may depend on it)
  104. - : ifrename is not included
  105. Size : ~28 kB
  106. Wireless headers (past history) :
  107. -------------------------------
  108. Previous version of the Wireless Tools had to be compiled with
  109. the same version of Wireless Extension that the kernel was using, and
  110. that was a major source of troubles.
  111. Starting with version 27, Wireless Tools include all the ugly
  112. code to deal with any version of Wireless Extensions, so now you can
  113. compile a single "generic" version of the tools for any kernel.
  114. Well, there are some limits, Wireless Extensions earlier than
  115. v11 are not supported (v9 and v10 should work fine), and versions
  116. later than the latest definition in the package are not
  117. supported. Once compile, the command "iwconfig --version" should tell
  118. you that.
  119. Note that the previous option to make versioned installed of
  120. the tools no longer make sense and therefore is gone.
  121. Old kernel with older Wireless Extensions :
  122. -----------------------------------------
  123. Kernel prior to 2.2.14 : Those kernels include Wireless
  124. Extensions v8 or earlier. Those versions don't have proper support for
  125. 802.11b, so are not very useful. You may want to consider upgrading.
  126. Kernel 2.2.19 to 2.2.25 : Those kernels include Wireless
  127. Extensions v10. The tools should mostly work with it, but many drivers
  128. won't. You can upgrade those kernel to WE v15 with a patch on my web
  129. page.
  130. Kernel 2.2.14 to 2.2.18 : Those kernels include Wireless
  131. Extensions v9. Same as above, you may want to upgrade to a later 2.2.X
  132. kernel and then apply the patch.
  133. Kernel 2.0.X : Those kernels include very old version of
  134. Wireless Extensions. Same deal as old 2.2.X kernels.
  135. Jean <jt@hpl.hp.com>