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