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