For more information about build environment setup, see chapters below about Configuration prerequisites and CI Farm configuration notes.
This version of the page reflects NUT release v2.8.1 with codebase commited 4ba352d8f at 2023-10-31T21:46:20+01:00
Options, features and capabilities in current development (and future releases) are detailed on the main site and may differ from ones described here.
When building NUT from Git sources rather than the distribution tarballs,
you would have to generate the configure
script and some further needed
files by running ./autogen.sh
. This in turn may require additional tools
and other dependencies on your build environment (referenced just a bit
below). For common developer iterations, porting to new platforms,
or in-place testing, running the ./ci_build.sh
script can be a helpful
one-stop solution.
+ The NUT Packager Guide, which presents the best practices for installing and integrating NUT, is also a good reading.
+ The Prerequisites for building NUT on different OSes document suggests prerequisite packages with tools and dependencies available and needed to build and test as much as possible of NUT on numerous platforms, written from perspective of CI testing (if you are interested in getting updated drivers for a particular device, you might select a sub-set of those suggestions).
There are a few options reviewed below that can be given to configure
script to tweak your compilations. See also ./configure --help
for a
current and complete listing for the current version of the codebase.
NUT tracks configure
options used during build, so you can view them
to produce a replacement by asking NUT programs for --help
or for
--version
with debugging enabled (first), e.g.:
:; upsd -DV Network UPS Tools upsd 2.8.1 Network UPS Tools version 2.8.1 configured with flags: --with-all=auto --with-doc=skip ...
A more industrial approach is to use lib/libupsclient-config --config-flags
where supported.