1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
Low level user space tools for the Linux WiMAX stack
(C) 2008 Intel Corporation < linux-wimax@intel.com >
Requirements
* libnl (at least 1.0-pre7)
* build dependencies:
+ Sources to the WiMAX stack and i2400m driver
+ gcc, make, etc
Licensing
The contents of this package are licensed under the BSD license. See
the LICENSE file.
This does not apply to scripts generated by autoconf/automake/libtool
or included for its support.
Compilation and installation
To compile, you first need to have a libnl version 1.0-pre7 or above.
To check which version is installed in your system, run:
$ pkg-config --modversion libnl-1
1.1
If the reported version is lower than 1.0, you need to get a newer
libnl; see below.
Building the WiMAX tools package:
$ cd ...path/wimax-tools-VERSION
$ ./configure --with-i2400m=/path/to/i2400m/driver
$ make
$ make install
Once this finishes, you can link against /usr/local/lib/libwimax.*. You
need to include include/wimax.h for the API definitions and
declarations. As well, wimax.h includes a quick usage guide of the API.
Building and installing libnl-1
This package requires version 1.0 or newer of libnl. 1.0 pre-releases
might not work.
If compilation fails complaining about the libnl version, please
upgrade via your distribution's mechanism or download and compile a
newer one.
If you decide to compile a new one, download it from
http://people.suug.ch/~tgr/libnl/files/libnl-1.0-pre7.tar.gz; this
version has been confirmed to compile and work in our test systems.
$ cd /somepath
$ tar xf libnl-1.0-pre7.tar.gz
$ cd libnl-1.0-pre7
$ ./configure && make
Don't install it system wide as you might break other applications.
Instead, add --with-libnl1=/somepath/libnl-1.0-pre7 to the configure
line for the wimax tools package.
$ cd ...path/wimax-tools-VERSION
$ ./configure --with-i2400m=/path/to/i2400m/driver --with-libnl1=/somepath/libnl
-1.0-pre7
$ make
$ make install
As well, before linking other applications to libwimax or running tools
from the WiMAX tools package, make sure you run:
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/somedir/libnl-1.0-pre7/lib
Usage
Documentation for the librarie's API can be autoextracted from the code
with doxygen; for that, run:
$ doxygen doxygen.conf
the output is placed in doc/html/index.html.
Other considerations
1. libnl (which we build upon) has no way to read with timeouts, etc,
so your wimax_msg_read() function will block until data is
available. No method is provided yet to access the underlying
socket, so it is recommended to you put a timeout in parallel
somewhere when using it that can cancel it.
Troubleshooting
Compile fails when not being able to find `net/wimax.h`
You haven't pointed the compilation process to the driver sources as
described above (use --with-i24000m=... when calling ./configure).
|