g_warning -> pcapng_debug and "switch it off" as default, so normal users won't be...
[obnox/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
3 out directly from Subversion, as files such as the configuration
4 script are not checked into Subversion, but need to be generated
5 from the autoconf and automake files.
6 See http://wiki.wireshark.org/Development if you would like to build
7 the source code checked out directly from Subversion.
8
9 Installation
10 ============
11
12 These are installation instructions for Unix and Unix-like systems
13 that can run the "configure" script in this same directory. These
14 are not the installation instructions for Windows systems; see
15 README.win32 for those instructions.
16
17 0. This is beta software.  Beware.
18
19 1. If you wish to build Wireshark, make sure you have GTK+ and GLib
20    installed. Try running 'pkg-config glib-2.0 --modversion' to see if
21    you have GLib 2.x installed and, if that fails, try running
22    'glib-config --version' to see if you have GLib 1.2[.x] installed. 
23    Then try running 'pkg-config gtk+-2.0 --modversion' to see if you
24    have GTK+ 2.x installed and, if that fails, try running
25    'gtk-config --version' to see if you have GTK+ 1.2[.x] installed.
26    Wireshark needs versions 1.2.0 or above of both these packages.
27    If you need to install or re-install GTK+ or GLIB, you can find
28    the packages at:
29
30         http://www.gtk.org
31
32    If you installed GTK+ from a binary package, you may have to
33    install a "development" package; there may be separate "user's"
34    and "developer's" packages, with the former not including
35    header files and the like.  For example, Red Hat users will
36    need to install a "gtk-devel" .rpm.
37
38    Note also that Wireshark configuration defaults to using GTK+ and
39    GLib 2.x; you need to configure with --disable-gtk2 to use GTK+
40    1.2[.x].
41
42 2. If you wish to build TShark, the line-mode version of Wireshark,
43    make sure you have GLIB installed.  See note #1 above for instructions
44    on checking if you have GLIB installed. You can download GLIB from
45    the same site as GTK.
46
47 3. If you want to capture packets, make sure you have libpcap
48    installed.  The latest "official" version can be found at
49
50         http://www.tcpdump.org .
51
52    If you've downloaded the 0.5.2 version, make sure you install
53    the headers ('make install-incl') when you install the library.
54    The CVS snapshots will install the headers if you do 'make
55    install', and have no 'install-incl' target.
56
57    If you installed libpcap from a binary package, you may have to
58    install a "development" package; for example, there's
59    apparently a "libpcap0" Debian package, but it just includes a
60    shared library, a copyright notice, changelog files, and a
61    README file - you also need to install a "libpcap-dev" package
62    to get header files, a non-shared library, and the man page.
63    Similarly, Red Hat 5.x users will need to install a "libpcap-devel"
64    .rpm to go along with the "libpcap" .rpm.
65
66 4. Run './configure' in the Wireshark distribution directory.
67    Running './configure --help' displays a list of options.
68    The file 'INSTALL.configure' contains general instructions for
69    using 'configure' and 'make'. Wireshark has some non-generic configure 
70    options:
71
72     --sysconfdir=DIR
73         Wireshark installs a support file (manuf) in ${PREFIX}/etc by
74         default, where ${PREFIX} comes from --prefix=DIR. If you do not
75         specify any --prefix option, ${PREFIX} is "/usr/local".
76         You can change the location of the manuf file with the --sysconfdir
77         option.
78
79     --disable-usr-local
80         By default 'configure' will look in /usr/local/{include,lib} for
81         additional header files and libraries. Using this switch keeps
82         'configure' from looking there
83
84     --disable-wireshark
85         By default, if 'configure' finds the GTK+ libraries, the Makefile
86         build Wireshark, the GUI packet analyzer. You can disable the
87         build of the GUI version of Wireshark with this switch.
88
89     --disable-gtk2
90         Build Glib/Gtk+ 1.2[.x]-based wireshark.
91
92     --disable-tshark
93         By default the line-mode packet analyzer, TShark, is built.
94         Use this switch to avoid building it.
95
96     --disable-editcap
97         By default the capture-file editing program is built.
98         Use this switch to avoid building it.
99
100     --disable-mergecap
101         By default the capture-file merging program is built.
102         Use this switch to avoid building it.
103
104     --disable-text2pcap
105         By default the hex-dump-to-capture file conversion program
106         is built. Use this switch to avoid building it.
107
108     --disable-idl2wrs
109         By default the IDL-to-wireshark-dissector-source-code converter
110         is built. Use this switch to avoid building it.
111
112     --enable-dftest
113         By default the display-filter-compiler test program is not built.
114         Use this switch to build it.
115
116     --enable-randpkt
117         By default the program which creates random packet-capture files
118         is not built. Use this switch to build it.
119
120     --without-pcap
121         If you choose to build a packet analyzer that can analyze
122         capture files but cannot capture packets on its own, but you
123         *do* have libpcap installed, or if you are trying to build
124         Wireshark on a system that doesn't have libpcap installed (in
125         which case you have no choice but to build a version that can
126         analyze capture files but cannot capture packets on its own),
127         use --without-pcap to avoid using libpcap.
128
129     --with-pcap=DIR
130         Use this to tell Wireshark where you have libpcap installed, if
131         it is installed in a non-standard location.
132
133     --without-zlib
134         By default, if 'configure' finds zlib (a.k.a, libz), the
135         wiretap library will be built so that it can read compressed
136         capture files. If you have zlib but do not wish to build
137         it into the wiretap library, used by Wireshark, TShark, and
138         the capture-file utilities that come in this package, use
139         this switch.
140
141     --with-zlib=DIR
142         Use this to tell Wireshark where you have zlib installed, if it
143         is installed in a non-standard location.
144
145     --disable-ipv6
146         If 'configure' finds support for IPv6 name resolution on
147         your system, the packet analyzers will make use of it.
148         To avoid using IPv6 name resolution if you have the support for it,
149         use this switch.
150
151     --enable-setuid-install
152         Use this switch to install the packet analyzers as setuid.
153         Installing Wireshark and TShark as setuid 'root' is
154         dangerous. Repeat: IT'S DANGEROUS. Don't do it.  (In fact,
155         applications using GTK+ 2.x will refuse to run setuid at
156         all, so Wireshark might not even run setuid.)
157
158     --with-ssl=DIR
159         If your SNMP library needs the SSL library, and your
160         SSL library is installed in a non-standard location,
161         you can specify where your SSL library is with this switch.
162
163     --without-net-snmp
164         If 'configure' finds a supported version of the Net-SNMP library
165         on your system,  the SNMP dissector will be enhanced to use
166         routines from the Net-SNMP library. Use this switch to avoid
167         using the Net-SNMP library even if you have it installed.
168
169     --with-net-snmp=PATH
170         Tell the 'configure' script where your net-snmp-config shell script 
171         that comes with the net-snmp package is located, if not in a standard 
172         location.
173
174     --without-plugins
175         By default, if your system can support run-time loadable modules,
176         the packet analyzers are build with support for plugins.
177         Use this switcht to build packet analyzers without plugin support.
178
179     --with-plugins=DIR
180         By default, plugins are installed in
181         ${LIBDIR}/wireshark/plugins/${VERSION}
182
183         ${LIBDIR} can be set with --libdir, or defaults to ${EPREFIX/lib}
184         ${EPREFIX} can be set with --exec-prefix, or defaults to ${PREFIX}
185         ${VERSION} is the Etherael version.
186
187         Use this switch to change the location where plugins
188         are installed.
189
190 5. After running './configure', you will see a summary of some
191    of the options you chose. Ensure that the summary reflects
192    what you want. If it doesn't, re-run './configure' with new options.
193
194 6. Run 'make'.  Hopefully, you won't run into any problems.
195
196 7. Run './wireshark' or './tshark', and make sure things are working.
197    You must have root privileges in order to capture live data.
198
199 8. Run 'make install'.  If you wish to install the man page, run
200    'make install-man'.  If you're running a system that supports
201    the Apt, RPM, or System V Release 4 packaging systems, you can
202    run one of
203
204         make debian-package     # Builds a binary package using dpkg
205         make rpm-package        # Builds a binary package using rpm
206         make srpm-package       # Builds a source package using rpm
207         make svr4-package       # Builds a source package using pkgmk
208         make solaris-package    # Same as "make svr4-package"
209
210    to make an installable package for your system.
211
212 If you have trouble with the build or installation process, you can
213 find assistance on the wireshark-users and wireshark-dev mailing lists.
214 See http://www.wireshark.org/lists/ for details.