// WSDG Chapter Build Introduction [#ChapterBuildIntro] == Introduction [#ChCodeOverview] === Source overview Wireshark consists of the following major parts: * Packet dissection - in the _/epan/dissectors_ and _/plugins/epan/{asterisk}_ directories * Capture file I/O - using Wireshark’s own wiretap library * Capture - using the libpcap and Npcap libraries, in _dumpcap.c_ and the _/capture_ directory * User interface - using Qt and associated libraries * Utilities - miscellaneous helper code * Help - using an external web browser and text output [#ChCodeStyle] === Coding Style The coding style guides for Wireshark can be found in the “Portability” section of the file _doc/README.developer_. [#ChCodeGLib] === The GLib library GLib is used as a basic platform abstraction library. It doesn't provide any direct GUI functionality. To quote the GLib Reference Manual: ____ GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures. ____ GLib contains lots of useful things for platform independent development. See https://developer.gnome.org/glib/ and https://docs.gtk.org/glib/ for details about GLib. // End of WSDG Chapter Build Introduction