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