Commit | Line | Data |
---|---|---|
fac6795d DG |
1 | LTTng Trace Control |
2 | ---------------- | |
3 | ||
38107a7f DG |
4 | Please visit https://lttng.org for more information. The current maintainer is |
5 | David Goulet <dgoulet@efficios.com>. | |
fac6795d DG |
6 | |
7 | Latest development can be found at: | |
8 | ||
38107a7f | 9 | * Gitweb : https://git.lttng.org/?p=lttng-tools.git;a=summary |
ebb6ebd5 | 10 | * Git : git://git.lttng.org/lttng-tools.git |
fac6795d | 11 | |
ebb6ebd5 | 12 | REQUIREMENTS: |
fac6795d | 13 | |
6ea7b6aa CB |
14 | - Linux kernel >= 2.6.27 |
15 | For epoll() support, at least this version is needed. However, poll() is | |
16 | also supported by running "./configure --disable-epoll". Using that, the | |
17 | kernel version can probably be older but we can't provide any guarantee. | |
18 | Please let us know if you are able to go lower without any problems. | |
2910b812 | 19 | |
ebb6ebd5 DG |
20 | - liburcu |
21 | Userspace RCU library, by Mathieu Desnoyers and Paul E. McKenney | |
fac6795d | 22 | |
38107a7f | 23 | -> Tested with liburcu 0.7.x stable. |
fac6795d | 24 | |
ebb6ebd5 | 25 | * Debian/Ubuntu package: liburcu-dev |
8bf332b9 | 26 | * Git : git://git.lttng.org/userspace-rcu.git |
38107a7f | 27 | * Website: https://lttng.org/urcu |
fac6795d | 28 | |
7105c24c | 29 | - libpopt >= 1.13 |
ebb6ebd5 | 30 | Library for parsing command line parameters |
fac6795d | 31 | |
ebb6ebd5 | 32 | * Debian/Ubuntu package: libpopt-dev |
fac6795d | 33 | |
11ebbd1e ZT |
34 | - libuuid |
35 | Universally unique id library | |
36 | ||
37 | * Debian/Ubuntu package: uuid-dev | |
38 | ||
525cb6b9 CB |
39 | - Babeltrace (optional) |
40 | Trace viewer. Enable the use of "lttng view" command | |
41 | ||
42 | * Debian/Ubuntu package: babeltrace | |
43 | ||
7c0cb22c CB |
44 | - Perl (optional) |
45 | Needed for make check and tests. | |
46 | ||
9ea3b588 JG |
47 | - Python >= 3.0 (optional) |
48 | Needed for make check and tests. | |
49 | ||
50 | * Debian/Ubuntu package: python3 | |
51 | ||
36907cb5 | 52 | - SWIG >= 2.0 (optional) |
d086eb77 | 53 | Needed for Python bindings (--enable-python-bindings). |
36907cb5 DS |
54 | |
55 | * Debian/Ubuntu package: swig2.0 | |
56 | ||
57 | - python-dev (optional) | |
58 | Python headers | |
59 | ||
d7c3ceb4 | 60 | * Debian/Ubuntu package: python3-dev |
36907cb5 | 61 | |
71a76062 MD |
62 | - For kernel tracing: modprobe |
63 | ||
6ea7b6aa CB |
64 | - bash |
65 | Needed for running "make check". | |
1167f2bc | 66 | |
8ad9aaaf MD |
67 | For developers using the git tree: |
68 | ||
69 | This source tree is based on the autotools suite from GNU to simplify | |
70 | portability. Here are some things you should have on your system in order to | |
71 | compile the git repository tree : | |
72 | ||
73 | - GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50) | |
74 | (make sure your system wide "automake" points to a recent version!) | |
75 | - GNU Libtool >=2.2 | |
38107a7f | 76 | (for more information, go to https://www.gnu.org/software/autoconf/) |
5a82525d DG |
77 | - flex >= 2.5.35 |
78 | - bison >= 2.4 | |
8ad9aaaf | 79 | |
ee10cdeb DG |
80 | If you use GNU gold, which is NOT mandatory, make sure you have this version: |
81 | - GNU gold >= 2.22 | |
82 | (Before this version we hit a known bug documented at: | |
83 | http://sourceware.org/bugzilla/show_bug.cgi?id=11317) | |
84 | Be advise that with GNU gold, you'll might have to specify -L/usr/local/lib in | |
85 | LDFLAGS. | |
86 | ||
8ad9aaaf | 87 | If you get the tree from the repository, you will need to use the "bootstrap" |
ee10cdeb DG |
88 | script in the root of the tree. It calls all the GNU tools needed to prepare |
89 | the tree configuration. | |
8ad9aaaf | 90 | |
fac6795d DG |
91 | INSTALLATION INSTRUCTIONS: |
92 | ||
ebb6ebd5 DG |
93 | - Download, compile and install the prerequisites. |
94 | Then: | |
ee10cdeb | 95 | $ ./boostrap |
ebb6ebd5 DG |
96 | $ ./configure |
97 | $ make | |
98 | $ sudo make install | |
99 | $ sudo ldconfig | |
fac6795d DG |
100 | |
101 | If compiling from the git repository, run ./bootstrap before running | |
102 | the configure script, to generate it. | |
103 | ||
36907cb5 | 104 | If you want Python bindings, run ./configure --enable-python-bindings. |
d7c3ceb4 MD |
105 | Please note that some distributions will need the following |
106 | environment variables set before running configure: | |
107 | ||
108 | export PYTHON="python3" | |
109 | export PYTHON_CONFIG="/usr/bin/python3-config" | |
36907cb5 | 110 | |
aeff77c8 DG |
111 | USAGE: |
112 | ||
113 | Please see doc/quickstart.txt to help you start tracing. You can also use the | |
114 | -h/--help command on 'lttng' and all other commands offered in this tool (Ex: | |
115 | lttng enable-event -h). | |
116 | ||
c0e668d0 DG |
117 | A network streaming HOWTO can be found in doc/streaming-howto.txt which quickly |
118 | helps you understand how to stream a LTTng 2.0 trace. | |
119 | ||
36907cb5 DS |
120 | A Python HOWTO can be found in doc/python-howto.txt which quickly |
121 | helps you understand how to use the Python module to control the LTTng API. | |
122 | ||
fac6795d DG |
123 | PACKAGE CONTENTS: |
124 | ||
ebb6ebd5 DG |
125 | This package contains the following elements: |
126 | ||
38107a7f | 127 | - liblttng-ctl (public API) |
ebb6ebd5 DG |
128 | The LTTng tracing control library. |
129 | ||
fe54b749 | 130 | - libsessiond-comm (internal) |
6ea7b6aa CB |
131 | The lttng-sessiond communication library. In order to talk with |
132 | lttng-sessiond, this library must be used. | |
ebb6ebd5 | 133 | |
fe54b749 | 134 | - libkernel-ctl (internal) |
ebb6ebd5 | 135 | Kernel tracer control and ioctl definitions. |
fac6795d | 136 | |
fe54b749 | 137 | - libconsumer (internal) |
3bd1e081 | 138 | Library for Kernel and (optionally) UST trace consumer. |
fac6795d | 139 | |
6ea7b6aa CB |
140 | - libkernel-consumer (internal) |
141 | Library for Kernel consumer control | |
fe54b749 | 142 | |
6ea7b6aa CB |
143 | - libust-consumer (internal) |
144 | Library for UST consumer control | |
fe54b749 | 145 | |
6ea7b6aa CB |
146 | - libhashtable (internal) |
147 | Library wrapper over URCU hashtables. | |
fe54b749 | 148 | |
6ea7b6aa CB |
149 | - libcommon (internal) |
150 | Contains multiple useful function call used by the whole tree. | |
ffb25bd5 | 151 | |
6ea7b6aa CB |
152 | - libcompat (internal) |
153 | Compatibility library mostly for FreeBSD and Linux. | |
ffb25bd5 | 154 | |
6ea7b6aa CB |
155 | - librelayd (internal) |
156 | Library for all relayd interactions over the network. | |
157 | ||
158 | - lttng-relayd | |
159 | The relay daemon used for network streaming | |
b8aa1682 | 160 | |
3bd1e081 | 161 | - lttng-consumerd |
fe54b749 | 162 | The consumer daemon which uses libconsumer. |
fac6795d | 163 | |
32258573 | 164 | - lttng-sessiond |
ebb6ebd5 | 165 | The LTTng session daemon binary. |
fac6795d | 166 | |
ebb6ebd5 DG |
167 | - lttng |
168 | The LTTng tracer command line control tool. | |
fac6795d | 169 | |
38107a7f | 170 | - include (installed in $(includedir)/lttng/) |
ebb6ebd5 | 171 | The liblttngctl API header file. |
fac6795d | 172 | |
ebb6ebd5 DG |
173 | - tests |
174 | Various test programs. | |
fe54b749 | 175 | |
6ea7b6aa CB |
176 | - doc |
177 | Various documentations and quickstart guide. | |
ffb25bd5 | 178 | |
6ea7b6aa CB |
179 | - extras |
180 | Contains extra data such as bash completion file. Python bindings for | |
181 | liblttng-ctl are also available there. |