Move health into its own common/ static library
[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
d7c3ceb4 50 * Debian/Ubuntu package: python3-dev
36907cb5 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 94 If you want Python bindings, run ./configure --enable-python-bindings.
d7c3ceb4
MD
95 Please note that some distributions will need the following
96 environment variables set before running configure:
97
98 export PYTHON="python3"
99 export PYTHON_CONFIG="/usr/bin/python3-config"
36907cb5 100
aeff77c8
DG
101USAGE:
102
103Please see doc/quickstart.txt to help you start tracing. You can also use the
104-h/--help command on 'lttng' and all other commands offered in this tool (Ex:
105lttng enable-event -h).
106
c0e668d0
DG
107A network streaming HOWTO can be found in doc/streaming-howto.txt which quickly
108helps you understand how to stream a LTTng 2.0 trace.
109
36907cb5
DS
110A Python HOWTO can be found in doc/python-howto.txt which quickly
111helps you understand how to use the Python module to control the LTTng API.
112
fac6795d
DG
113PACKAGE CONTENTS:
114
ebb6ebd5
DG
115 This package contains the following elements:
116
38107a7f 117 - liblttng-ctl (public API)
ebb6ebd5
DG
118 The LTTng tracing control library.
119
fe54b749
DG
120 - libsessiond-comm (internal)
121 The lttng-sessiond communication library. In order to talk with
122 lttng-sessiond, this library must be used.
ebb6ebd5 123
fe54b749 124 - libkernel-ctl (internal)
ebb6ebd5 125 Kernel tracer control and ioctl definitions.
fac6795d 126
fe54b749 127 - libconsumer (internal)
3bd1e081 128 Library for Kernel and (optionally) UST trace consumer.
fac6795d 129
fe54b749
DG
130 - libkernel-consumer (internal)
131 Library for Kernel consumer control
132
133 - libust-consumer (internal)
134 Library for UST consumer control
135
136 - libhashtable (internal)
137 Library wrapper over URCU hashtables.
138
ffb25bd5
DG
139 - libcommon (internal)
140 Contains multiple useful function call used by the whole tree.
141
142 - libcompat (internal)
143 Compatibility library mostly for FreeBSD and Linux.
144
145 - librelayd (internal)
146 Library for all relayd interactions over the network.
147
b8aa1682
JD
148 - lttng-relayd
149 The relay daemon used for network streaming
150
3bd1e081 151 - lttng-consumerd
fe54b749 152 The consumer daemon which uses libconsumer.
fac6795d 153
32258573 154 - lttng-sessiond
ebb6ebd5 155 The LTTng session daemon binary.
fac6795d 156
ebb6ebd5
DG
157 - lttng
158 The LTTng tracer command line control tool.
fac6795d 159
38107a7f 160 - include (installed in $(includedir)/lttng/)
ebb6ebd5 161 The liblttngctl API header file.
fac6795d 162
ebb6ebd5
DG
163 - tests
164 Various test programs.
fe54b749
DG
165
166 - doc
167 Various documentations and quickstart guide.
ffb25bd5
DG
168
169 - extras
38107a7f
DG
170 Contains extra data such as bash completion file. Python bindings for
171 liblttng-ctl are also available there.
This page took 0.044044 seconds and 5 git commands to generate.