123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 |
- Very important note :
- -------------------
- This release of the Wireless Tools is not compatible with
- Wireless Extensions earlier than 9. Version 9 and 10 should work fine
- but are not recommended. Version 8 and earlier will not work.
- Kernels that support this version of the Wireless Tools are
- listed below. For all kernels before that, see at the end.
- You need :
- --------
- o Compiler and development environment
- o A kernel supporting wireless extensions version 11 or higher
- -> from 2.4.4 onward (including 2.6.X)
- Note : CONFIG_NET_RADIO must be enabled
- o (Optional) A Pcmcia package supporting Wireless Extension
- o A driver supporting wireless extensions
- -> Check my web pages for status of various drivers.
- Note : more recent kernels and drivers are likely to support
- more wireless extension features...
- Compile wireless tools :
- ----------------------
- In theory, a "make" should suffice to create the tools.
- Installation :
- ------------
- "make install" should do the right thing for you, and install
- the tools, their library and the man pages. You can also uninstall the
- tools via "make uninstall".
- Note that the default installation is in the directory
- '/usr/local/sbin'. This may not be in your path. Also, other version
- of the tools may exist on the system, so double check which version is
- the default and adjust your path as necessary.
- Create a local copy of the tools :
- --------------------------------
- By default, the package is built with iwlib as a dynamic
- library, and the tool will expect to use the default version of libiw
- on the system. This means you can't use the tools until they are
- properly installed.
- If you just want to experiment with a "local" version of the
- tools, you may want to pass the BUILD_STATIC flag to Makefile. It will
- create a self contained version of the tools.
- -------------
- make clean
- make BUILD_STATIC='y'
- -------------
- The resulting binary can be used in the compilation directory
- or installed in any place you like.
- Other useful Makefile options :
- -----------------------------
- PREFIX : where the tools will be installed (default : /usr/local)
- CC : Compiler to use (defaul : gcc)
- BUILD_STATIC : build tools with a static version of the wireless lib
- BUILD_NOLIBM : build tools without mathematical lib (slower)
- BUILD_STRIPPING : strip symbols from tools/lib.
- BUILD_WE_ESSENTIAL : remove less used and obsolete features.
- You can pass those options on the command line of make, or
- modify the top of the Makefile. You can also set them as environment
- variable, but this is not recommended.
- If you pass those options on the command line, you should pass
- the same command line options for all invocations of make ("make" and
- "make install").
- Memory footprint reduction :
- --------------------------
- The Wireless Tools are used in various embedded systems where
- memory footprint is a great concern. The Wireless Tools package offer
- multiple options to customise the compilation depending on the level
- of features you want.
- The list below details the must useful combinations of these
- options, from the largest footprint to the smallest. Footprint depend
- on lot's of factor and is purely indicative (version 29-pre7+, i386,
- glibc, gcc 3.3.5).
- 1) Static build
- Command line : make BUILD_STATIC='y'
- - : Largest footprint
- - : libiw not included (other third party tools may depend on it)
- Size : ~280 kB
- 2) Default build
- Command line : make
- + : Fully featured version of the tools
- - : Largest footprint (except for static version of tools)
- Size : ~190 kB (libiw : ~29 kB ; ifrename : ~29 kB)
- 3) Stripping (remove function symbols)
- Command line : make BUILD_STRIPPING='y'
- + : Fully featured version of the tools
- - : Still quite large
- Size : ~110 kB (libiw : ~23 kB ; ifrename : ~17 kB)
- 4) Multicall version (include stripping)
- Command line : make iwmulticall ; make install-iwmulticall
- + : Fully featured version of the tools
- + : Small
- - : libiw not included (other third party tools may depend on it)
- - : ifrename is not included
- Size : ~55 kB
- 5) Multicall + Essential
- Command line : make BUILD_WE_ESSENTIAL='y' iwmulticall
- + : Smaller
- - : Some less used features are left out
- - : libiw not included (other third party tools may depend on it)
- - : ifrename is not included
- Size : ~44 kB
- 6) iwconfig only + essential + static
- Command line : make BUILD_WE_ESSENTIAL='y' BUILD_STATIC='y' BUILD_STRIPPING='y' iwconfig
- + : Very small
- - : Very limited functionality : no scanning, no event, no iwpriv
- - : libiw not included (other third party tools may depend on it)
- - : ifrename is not included
- Size : ~28 kB
- Wireless headers (past history) :
- -------------------------------
- Previous version of the Wireless Tools had to be compiled with
- the same version of Wireless Extension that the kernel was using, and
- that was a major source of troubles.
- Starting with version 27, Wireless Tools include all the ugly
- code to deal with any version of Wireless Extensions, so now you can
- compile a single "generic" version of the tools for any kernel.
- Well, there are some limits, Wireless Extensions earlier than
- v11 are not supported (v9 and v10 should work fine), and versions
- later than the latest definition in the package are not
- supported. Once compile, the command "iwconfig --version" should tell
- you that.
- Note that the previous option to make versioned installed of
- the tools no longer make sense and therefore is gone.
- Old kernel with older Wireless Extensions :
- -----------------------------------------
- Kernel prior to 2.2.14 : Those kernels include Wireless
- Extensions v8 or earlier. Those versions don't have proper support for
- 802.11b, so are not very useful. You may want to consider upgrading.
- Kernel 2.2.19 to 2.2.25 : Those kernels include Wireless
- Extensions v10. The tools should mostly work with it, but many drivers
- won't. You can upgrade those kernel to WE v15 with a patch on my web
- page.
- Kernel 2.2.14 to 2.2.18 : Those kernels include Wireless
- Extensions v9. Same as above, you may want to upgrade to a later 2.2.X
- kernel and then apply the patch.
- Kernel 2.0.X : Those kernels include very old version of
- Wireless Extensions. Same deal as old 2.2.X kernels.
- Jean <jt@hpl.hp.com>
|