diff options
author | Guy Harris <gharris@sonic.net> | 2021-02-12 15:00:07 -0800 |
---|---|---|
committer | Guy Harris <gharris@sonic.net> | 2021-02-12 15:00:07 -0800 |
commit | b67494e32ab73cc5e8cc84cb0d5e794bf0de82ea (patch) | |
tree | 64cc30a30fc79419329f0a6dd88e048844aaf411 /docbook | |
parent | b9bdc803bb3bc9edcf25a9aaec4b5c2723db7b3e (diff) |
WSDG: give more details on setting up a UNIX build environment.
List the minimum set of tools required.
We have scripts to do the setup work on a number of platforms. Let the
user know about them.
Give instructions on using CMake; we're not using the traditional
autoconf stuff any more.
Give instructions on building the Developer's and User's Guides in the
UNIX section, and, in both that section *and* the equivalent Windows
section, give the name of the build target for building all guides.
Diffstat (limited to 'docbook')
-rw-r--r-- | docbook/wsdg_src/WSDG_chapter_quick_setup.adoc | 114 |
1 files changed, 108 insertions, 6 deletions
diff --git a/docbook/wsdg_src/WSDG_chapter_quick_setup.adoc b/docbook/wsdg_src/WSDG_chapter_quick_setup.adoc index fc88b89fad..e13606f7c8 100644 --- a/docbook/wsdg_src/WSDG_chapter_quick_setup.adoc +++ b/docbook/wsdg_src/WSDG_chapter_quick_setup.adoc @@ -6,12 +6,65 @@ [[ChSetupUNIX]] -=== UNIX: Installation - -All the tools required are usually installed on a UNIX developer machine. - -If a tool is not already installed on your system, you can usually install it -using the package in your distribution: aptitude, yum, Synaptic, etc. +=== UNIX: Installation and Build Instructions + +[[ChSetupUNIXBuildEnvironmentSetup]] + +==== Build environment setup + +The following must be installed in order to build Wireshark: + +* a C compiler and a C++ compiler; +* the Flex lexical analyzer; +* either Bison or Berkeley YACC; +* Perl; +* Python 3; +* CMake; +* several required libraries. + +Either make or Ninja can be used to build Wireshark; at least one of +those must be installed. + +To build the Developer's Guide and the User's Guide, Asciidoctor, +Xsltproc, and DocBook must be installed. + +Some features of Wireshark require additional libraries to be installed. + +For Debian, and for Linux distributions based on Debian, such as Ubuntu, +the script `tools/debian-setup.sh` will install the packages and +libraries required to build Wireshark. It supports the command-line +options: + +* `--install-optional` to install additional tools and to install +libraries required for all Wireshark features; +* `--install-deb-deps` to install packages required to build a .deb file +for Wireshark; +* `--install-test-deps` to install packages required to run all tests. + +For RPM-based Linux distributions such as Red Hat, Centos, Fedora, and +openSUSE, the script `tools/rpm-setup.sh` will install the packages and +libraries required to build Wireshark. It supports the +`--install-optional` command-line option to install additional tools and +to install libraries required for all Wireshark features. + +For Alpine Linux, the script `tools/alpine-setup.sh` will install the +packages and libraries required to build Wireshark. It supports the +`--install-optional` command-line option to install additional tools and +to install libraries required for all Wireshark features. + +For FreeBSD, NetBSD, OpenBSD, and DragonFly BSD, the script +`tools/bsd-setup.sh` will install the packages and libraries required to +build Wireshark. It supports the `--install-optional` command-line +option to install additional tools and to install libraries required for +all Wireshark features. + +For macOS, you must first install Xcode. After installing Xcode, the +script `tools/macos-setup.sh` will install the rest of the tools and +libraries required to build Wireshark, as well as the additional tools +required to build the documentation and the libraries required for all +Wireshark features. If you're using Homebrew, the script +`tools/macos-setup-brew.sh` will intall the same tools and libraries +from Homebrew. If an install package is not available or you have a reason not to use it (maybe because it’s simply too old), you @@ -19,6 +72,53 @@ can install that tool from source code. The following sections will provide you with the webpage addresses where you can get these sources. +[[ChSetupUNIXBuild]] + +==== Building + +CMake builds are best done in a separate build directory, such as a +`build` subdirectory of the top-level source directory. If that +directory is a subdirectory of the top-level source directory, to +generate the build files, change to the build directory and enter the +following command: + +---- +$ cmake .. +---- + +to use make as the build tool or + +---- +$ cmake -G Ninja .. +---- + +to use Ninja as the build tool. If you create the build tool in the +same directory that contains the top-level Wireshark source directory, +to generate the build files, change to the build directory and enter the +following command: + +---- +$ cmake ../{source directory} +---- + +to use make as the build tool or + +---- +$ cmake -G Ninja ../{source directory} +---- + +to use Ninja as the build tool. `{source directory}` is the name of the +top-level Wireshark source directory. + +You can then run make or Ninja to build Wireshark. + +==== Optional: Create User’s and Developer’s Guide + +To build the Wireshark User's Guide and the Wireshark Developer's Guide +build the `all_guides` target, e.g. `make all_guides` or `ninja +all_guides`. Detailed information to build these guides can be found in +the file _docbook\README.adoc_ in the Wireshark sources. + [[ChSetupWin32]] === Win32/64: Step-by-Step Guide @@ -452,6 +552,8 @@ on using the <<ChToolsDebugger, Debugger Tools>>. ==== Optional: Create User’s and Developer’s Guide +To build the Wireshark User's Guide and the Wireshark Developer's Guide +build the `all_guides` target, e.g. `msbuild all_guides.vcxproj`. Detailed information to build these guides can be found in the file _docbook\README.adoc_ in the Wireshark sources. |