kafka: fully dissect offset request/response messages
[metze/wireshark/wip.git] / INSTALL
1 NOTE: this document applies to the Wireshark source releases and
2 buildbot source tarballs.  It does not apply to source code checked out
3 directly from Git, as files such as the configuration script are not
4 checked into Git, but need to be generated from the autoconf and
5 automake files.
6
7 See http://wiki.wireshark.org/Development if you would like to build the
8 source code checked out directly from Git.
9
10 Installation
11 ============
12
13 These are installation instructions for Unix and Unix-like systems
14 that can run the "configure" script in this same directory. These
15 are not the installation instructions for Windows systems; see
16 README.windows for those instructions.
17
18 0. This is software.  Beware.
19
20 1. If you wish to build Wireshark, make sure you have GTK+ and GLib
21    installed. Try running 'pkg-config glib-2.0 --modversion' to see if
22    you have GLib 2.x installed and, if that fails, try running
23    'glib-config --version' to see if you have GLib 1.2[.x] installed.
24    Then try running 'pkg-config gtk+-2.0 --modversion' to see if you
25    have GTK+ 2.x installed and, if that fails, try running
26    'gtk-config --version' to see if you have GTK+ 1.2[.x] installed.
27    Wireshark needs versions 1.2.0 or above of both these packages.
28    If you need to install or re-install GTK+ or GLIB, you can find
29    the packages at:
30
31         http://www.gtk.org
32
33    If you installed GTK+ from a binary package, you may have to
34    install a "development" package; there may be separate "user's"
35    and "developer's" packages, with the former not including
36    header files and the like.  For example, Red Hat users will
37    need to install a "gtk-devel" .rpm.
38
39    Note also that Wireshark configuration defaults to using GTK+ and
40    GLib 2.x; you need to configure with --disable-gtk2 to use GTK+
41    1.2[.x].
42
43    Please also note that GTK+ 1.2[.x] is only supported up to 
44    Wireshark 1.0.x. From Wireshark 1.1.x onwards only GTK+ 2.x
45    is supported.
46
47 2. If you wish to build TShark, the line-mode version of Wireshark,
48    make sure you have GLIB installed.  See note #1 above for instructions
49    on checking if you have GLIB installed. You can download GLIB from
50    the same site as GTK.
51
52 3. If you want to capture packets, make sure you have libpcap
53    installed.  The latest "official" version can be found at
54
55         http://www.tcpdump.org .
56
57    If you've downloaded the 0.5.2 version, make sure you install
58    the headers ('make install-incl') when you install the library.
59    The CVS snapshots will install the headers if you do 'make
60    install', and have no 'install-incl' target.
61
62    If you installed libpcap from a binary package, you may have to
63    install a "development" package; for example, there's
64    apparently a "libpcap0" Debian package, but it just includes a
65    shared library, a copyright notice, changelog files, and a
66    README file - you also need to install a "libpcap-dev" package
67    to get header files, a non-shared library, and the man page.
68    Similarly, Red Hat 5.x users will need to install a "libpcap-devel"
69    .rpm to go along with the "libpcap" .rpm.
70
71 4. Building Wireshark requires Perl (specifically the pod2man program)
72    so that the documentation can be built.
73
74 5. Run './configure' in the Wireshark distribution directory.
75    Running './configure --help' displays a complete list of options.
76    The file 'INSTALL.configure' contains general instructions for
77    using 'configure' and 'make'. Some of the Wireshark non-generic
78    configure options are as follows:
79
80     --sysconfdir=DIR
81         Wireshark installs a support file (manuf) in ${PREFIX}/etc by
82         default, where ${PREFIX} comes from --prefix=DIR. If you do not
83         specify any --prefix option, ${PREFIX} is "/usr/local".
84         You can change the location of the manuf file with the --sysconfdir
85         option.
86
87     --disable-usr-local
88         By default 'configure' will look in /usr/local/{include,lib} for
89         additional header files and libraries. Using this switch keeps
90         'configure' from looking there
91
92     --disable-wireshark
93         By default, if 'configure' finds the GTK+ libraries, the Makefile
94         builds Wireshark, the GUI packet analyzer. You can disable the
95         build of the GUI version of Wireshark with this switch.
96
97     --disable-gtk2
98         Build Glib/Gtk+ 1.2[.x]-based wireshark.
99         Note: not supported from Wireshark 1.1.x onwards
100
101     --disable-tshark
102         By default the line-mode packet analyzer, TShark, is built.
103         Use this switch to avoid building it.
104
105     --disable-editcap
106         By default the capture-file editing program is built.
107         Use this switch to avoid building it.
108
109      --disable-capinfos
110         By default the capture-file statistics reporting pogram
111         is built. Use this switch to avoid building it.
112
113     --disable-mergecap
114         By default the capture-file merging program is built.
115         Use this switch to avoid building it.
116
117     --disable-text2pcap
118         By default the hex-dump-to-capture file conversion program
119         is built. Use this switch to avoid building it.
120
121     --disable-dftest
122         By default the display-filter-compiler test program is built.
123         Use this switch to avoid building it.
124
125     --disable-randpkt
126         By default the program which creates random packet-capture files
127         is built. Use this switch to avoid building it.
128
129     --disable-dumpcap
130         By default the network traffic capture program is built.
131         Use this switch to avoid building it.
132
133     --disable-reordercap
134         By default the capture-file reordering program is built.
135         Use this switch to avoid building it.
136
137     --disable-rawshark
138         By default the program used to dump and analyze raw libpcap data
139         is built. Use this switch to avoid building it.
140
141     --disable-ipv6
142         If 'configure' finds support for IPv6 name resolution on
143         your system, the packet analyzers will make use of it.
144         To avoid using IPv6 name resolution if you have the support for it,
145         use this switch.
146
147     --enable-setuid-install
148         Wireshark and TShark rely on dumpcap for packet capture. Setting this
149         flag installs dumpcap with setuid root permissions, which lets any user
150         on the system capture live traffic. If this is not desired, you can
151         restrict dumpcap's permissions so that only a single user or group can
152         run it. This can be used in conjunction with --with-libcap described
153         below.
154
155         Running Wireshark or TShark as root is not recommended.
156
157     --without-libcap
158         By default, if 'configure' finds libcap (the POSIX capabilities
159         library) dumpcap will be built so that if it is installed setuid
160         root, it will attempt to retain CAP_NET_RAW and CAP_NET_ADMIN
161         before dropping root privileges. Use this option to disable this
162         behavior.
163
164     --with-libcap=DIR
165         Use this option to tell 'configure' where libcap is installed,
166         if it is installed in a non-standard location. Note that libcap
167         (the POSIX capabilities library, sans "p") and libpcap (the
168         packet capture library, avec "p") are two very different things.
169
170     --without-pcap
171         If you choose to build a packet analyzer that can analyze
172         capture files but cannot capture packets on its own, but you
173         *do* have libpcap installed, or if you are trying to build
174         Wireshark on a system that doesn't have libpcap installed (in
175         which case you have no choice but to build a version that can
176         analyze capture files but cannot capture packets on its own),
177         use --without-pcap to avoid using libpcap.
178
179     --with-pcap=DIR
180         Use this to tell Wireshark where you have libpcap installed, if
181         it is installed in a non-standard location.
182
183     --without-zlib
184         By default, if 'configure' finds zlib (a.k.a, libz), the
185         wiretap library will be built so that it can read compressed
186         capture files. If you have zlib but do not wish to build
187         it into the wiretap library, used by Wireshark, TShark, and
188         the capture-file utilities that come in this package, use
189         this switch.
190
191     --with-zlib=DIR
192         Use this to tell Wireshark where you have zlib installed, if it
193         is installed in a non-standard location.
194
195     --without-plugins
196         By default, if your system can support run-time loadable modules,
197         the packet analyzers are build with support for plugins.
198         Use this switch to build packet analyzers without plugin support.
199
200     --with-plugins=DIR
201         By default, plugins are installed in
202         ${LIBDIR}/wireshark/plugins/${VERSION}
203
204         ${LIBDIR} can be set with --libdir, or defaults to ${EPREFIX/lib}
205         ${EPREFIX} can be set with --exec-prefix, or defaults to ${PREFIX}
206         ${VERSION} is the Wireshark version.
207
208         Use this switch to change the location where plugins
209         are installed.
210
211 6. After running './configure', you will see a summary of some
212    of the options you chose. Ensure that the summary reflects
213    what you want. If it doesn't, re-run './configure' with new options.
214
215 7. Run 'make'.  Hopefully, you won't run into any problems.
216
217 8. Run './wireshark' or './tshark' or ./dumpcap, and make sure things are
218    working. You must have root privileges in order to capture live data.
219
220 9./a. Run 'make install'.  If you're running a system that supports
221    the RPM, OSX, or System V Release 4 packaging systems, you can
222    run one of
223
224         make rpm-package        # Builds a binary package using rpm
225         make srpm-package       # Builds a source package using rpm
226         make svr4-package       # Builds a binary package using pkgmk
227         make solaris-package    # Same as "make svr4-package"
228         make osx-package        # Builds a binary package for OSX
229
230    to make an installable package for your system.
231
232 9/b. If you 're running a system that supports APT (Debian/Ubuntu/etc.)
233    run
234
235         dpkg-buildpackage -us -uc -rfakeroot
236
237    in the source directory right after extracting of checking out
238    Wireshark's source code. (You don't have to run configure/make/etc.
239    prior to running dpkg-buildpackage)
240
241
242 If you have trouble with the build or installation process, you can
243 find assistance on the wireshark-users and wireshark-dev mailing lists.
244 See http://www.wireshark.org/lists/ for details.