Fix mi: use of wrong variable for error propagation
[lttng-tools.git] / README
CommitLineData
fac6795d
DG
1LTTng Trace Control
2----------------
3
38107a7f
DG
4Please visit https://lttng.org for more information. The current maintainer is
5David Goulet <dgoulet@efficios.com>.
fac6795d
DG
6
7Latest 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 12REQUIREMENTS:
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
6c1494fd
JG
44 - libxml2 >= 2.7.6
45 XML document parsing library.
46
47 * Debian/Ubuntu package: libxml2-dev
48
7c0cb22c
CB
49 - Perl (optional)
50 Needed for make check and tests.
51
9ea3b588
JG
52 - Python >= 3.0 (optional)
53 Needed for make check and tests.
54
55 * Debian/Ubuntu package: python3
56
36907cb5 57 - SWIG >= 2.0 (optional)
d086eb77 58 Needed for Python bindings (--enable-python-bindings).
36907cb5
DS
59
60 * Debian/Ubuntu package: swig2.0
61
62 - python-dev (optional)
63 Python headers
64
d7c3ceb4 65 * Debian/Ubuntu package: python3-dev
36907cb5 66
71a76062
MD
67 - For kernel tracing: modprobe
68
6ea7b6aa
CB
69 - bash
70 Needed for running "make check".
1167f2bc 71
8ad9aaaf
MD
72For developers using the git tree:
73
74This source tree is based on the autotools suite from GNU to simplify
75portability. Here are some things you should have on your system in order to
76compile the git repository tree :
77
78- GNU autotools (automake >=1.10, autoconf >=2.50, autoheader >=2.50)
79 (make sure your system wide "automake" points to a recent version!)
80- GNU Libtool >=2.2
38107a7f 81 (for more information, go to https://www.gnu.org/software/autoconf/)
5a82525d
DG
82- flex >= 2.5.35
83- bison >= 2.4
8ad9aaaf 84
ee10cdeb
DG
85If you use GNU gold, which is NOT mandatory, make sure you have this version:
86- GNU gold >= 2.22
87(Before this version we hit a known bug documented at:
88 http://sourceware.org/bugzilla/show_bug.cgi?id=11317)
89Be advise that with GNU gold, you'll might have to specify -L/usr/local/lib in
90LDFLAGS.
91
8ad9aaaf 92If you get the tree from the repository, you will need to use the "bootstrap"
ee10cdeb
DG
93script in the root of the tree. It calls all the GNU tools needed to prepare
94the tree configuration.
8ad9aaaf 95
fac6795d
DG
96INSTALLATION INSTRUCTIONS:
97
ebb6ebd5
DG
98 - Download, compile and install the prerequisites.
99 Then:
ee10cdeb 100 $ ./boostrap
ebb6ebd5
DG
101 $ ./configure
102 $ make
103 $ sudo make install
104 $ sudo ldconfig
fac6795d
DG
105
106 If compiling from the git repository, run ./bootstrap before running
107 the configure script, to generate it.
108
36907cb5 109 If you want Python bindings, run ./configure --enable-python-bindings.
d7c3ceb4
MD
110 Please note that some distributions will need the following
111 environment variables set before running configure:
112
113 export PYTHON="python3"
114 export PYTHON_CONFIG="/usr/bin/python3-config"
36907cb5 115
aeff77c8
DG
116USAGE:
117
118Please see doc/quickstart.txt to help you start tracing. You can also use the
119-h/--help command on 'lttng' and all other commands offered in this tool (Ex:
120lttng enable-event -h).
121
c0e668d0
DG
122A network streaming HOWTO can be found in doc/streaming-howto.txt which quickly
123helps you understand how to stream a LTTng 2.0 trace.
124
36907cb5
DS
125A Python HOWTO can be found in doc/python-howto.txt which quickly
126helps you understand how to use the Python module to control the LTTng API.
127
fac6795d
DG
128PACKAGE CONTENTS:
129
ebb6ebd5
DG
130 This package contains the following elements:
131
38107a7f 132 - liblttng-ctl (public API)
ebb6ebd5
DG
133 The LTTng tracing control library.
134
fe54b749 135 - libsessiond-comm (internal)
6ea7b6aa
CB
136 The lttng-sessiond communication library. In order to talk with
137 lttng-sessiond, this library must be used.
ebb6ebd5 138
fe54b749 139 - libkernel-ctl (internal)
ebb6ebd5 140 Kernel tracer control and ioctl definitions.
fac6795d 141
fe54b749 142 - libconsumer (internal)
3bd1e081 143 Library for Kernel and (optionally) UST trace consumer.
fac6795d 144
6ea7b6aa
CB
145 - libkernel-consumer (internal)
146 Library for Kernel consumer control
fe54b749 147
6ea7b6aa
CB
148 - libust-consumer (internal)
149 Library for UST consumer control
fe54b749 150
6ea7b6aa
CB
151 - libhashtable (internal)
152 Library wrapper over URCU hashtables.
fe54b749 153
6ea7b6aa
CB
154 - libcommon (internal)
155 Contains multiple useful function call used by the whole tree.
ffb25bd5 156
6ea7b6aa
CB
157 - libcompat (internal)
158 Compatibility library mostly for FreeBSD and Linux.
ffb25bd5 159
6ea7b6aa
CB
160 - librelayd (internal)
161 Library for all relayd interactions over the network.
162
163 - lttng-relayd
164 The relay daemon used for network streaming
b8aa1682 165
3bd1e081 166 - lttng-consumerd
fe54b749 167 The consumer daemon which uses libconsumer.
fac6795d 168
32258573 169 - lttng-sessiond
ebb6ebd5 170 The LTTng session daemon binary.
fac6795d 171
ebb6ebd5
DG
172 - lttng
173 The LTTng tracer command line control tool.
fac6795d 174
38107a7f 175 - include (installed in $(includedir)/lttng/)
ebb6ebd5 176 The liblttngctl API header file.
fac6795d 177
ebb6ebd5
DG
178 - tests
179 Various test programs.
fe54b749 180
6ea7b6aa
CB
181 - doc
182 Various documentations and quickstart guide.
ffb25bd5 183
6ea7b6aa
CB
184 - extras
185 Contains extra data such as bash completion file. Python bindings for
186 liblttng-ctl are also available there.
This page took 0.048522 seconds and 5 git commands to generate.