152 lines
6.1 KiB
Plaintext
Executable File
152 lines
6.1 KiB
Plaintext
Executable File
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>
|