Servus  1.3.0
C++ network oriented utilities including a zeroconf implementation
 All Pages
README.md
1 [TOC]
2 
3 # Introduction {#Introduction}
4 
5 Servus is a small C++ network utility library that provides a zeroconf
6 API, URI parsing and UUIDs.
7 
8 Servus 1.2 can be retrieved by cloning the
9 [source code](https://github.com/HBPVIS/servus). Please file a
10 [Bug Report](https://github.com/HBPVis/servus/issues) if you find any issues
11 with this release.
12 
13 ## Features {#Features}
14 
15 Servus provides classes for:
16 
17 * 128 bit UUIDs
18 * An URI class to parse strings using generic syntax from
19  [RFC3986](https://www.ietf.org/rfc/rfc3986.txt)
20 * Zeroconf announcement and browsing using Avahi or DNSSD
21 * Detailed @ref Changelog
22 
23 # Building {#Building}
24 
25 Servus is a cross-platform library, the only mandatory dependency is a
26 C++11 compiler. Zeroconf will be available in those platforms were
27 either Avahi or DNSSD are available, otherwise an empty dummy backend is
28 used. Servus uses CMake to provide a platform-independent build
29 configuration. The following platforms and build environments have been
30 tested:
31 
32 * Linux: Ubuntu 14.04, RHEL 6 using gcc 4.8.2
33 * Windows: 8 using Visual Studio 12
34 * Mac OS X: 10.9 and 10.10 using clang 6
35 
36 The following external, pre-installed optional dependencies are used:
37 
38 * Boost.Test to build unit tests
39 * Avahi (avahi-client) or DNSSD (Apple Bonjour) for zeroconf
40 * Qt5 Core for servus::qt::ItemModel
41 * Qt5 Widgets for servusBrowser tool
42 
43 Building from source is as simple as:
44 
45  git clone https://github.com/HBPVIS/Servus.git
46  mkdir Servus/build
47  cd Servus/build
48  cmake ..
49  make