diff --git a/INSTALL b/INSTALL index 975afa232..6665668a8 100644 --- a/INSTALL +++ b/INSTALL @@ -1,5 +1,52 @@ SvxLink build instructions ========================== + +== Dependencies == +Some dependencies need to be installed before building. First, the build tools: + +* *gcc/g\+\+*: The GNU C/C++ compiler (Required) +* *make*: The Make build tool (Required) +* *cmake*: Version 2.8 or later. A makefile generator (Required) +* *groff*: Needed to build manual pages (Recommended) +* *gzip*: Needed to compress manual pages (Recommended) +* *doxygen*: Used to build developer documentation (Optional) +* *tar*: Needed to unpack downloaded source archives (Recommended) +* *git*: Needed to download bleeding edge/experimental source code (Optional) + +SvxLink depend on some third party libraries. Since packages are named +differently in different distributions you need to do some research to find out +exactly what the packages are called in your distribution. Packages usually are +devided in two parts, a runtime part and a development part. Both are needed to +compile SvxLink. The development packages usually have a name ending in "-dev" +or "-devel". + +* *libsigc++*: Version 2. A callback handling framework (Required) +* *libpopt*: Parse command line options (Required) +* *tcl*: The TCL scripting language (Required) +* *libgcrypt*: Cryptographic functions (Required) +* *libasound*: Alsa sound system support (Recommended) +* *libgsm*: GSM audio codec (Required) +* *libspeex*: The Speex audio codec (Optional) +* *librtlsdr*: Support for RTL2832U DVB-T/SDR USB dongles (Optional) +* *libqt*: Version 4. Framework for graphical applications (Optional) + +There also are some runtime dependencies which normally is needed to run a +SvxLink system. + +* *alsa-utils*: Alsa tools for configuring sound levels etc (Recommended) +* *opus-tools*: Encode/decode Opus sound files (Optional) + +== Required system user == +Before trying to build and install using the commands below you also need to +create a user called 'svxlink'. There must also exist a group called 'daemon' +for the install to complete without errors. + +How to create users and groups vary between different Linux distributions. +A common command that exist on many distributions is 'useradd'. The 'daemon' +group usually exist but if not, look for the 'groupadd' command. + + +== Build and install == SvxLink use the CMake build system. The basic pattern for building using CMake looks like this: @@ -10,6 +57,7 @@ looks like this: make make doc make install + ldconfig This will build SvxLink and install it under /usr/local. The first argument to cmake point out the source directory so the build directory can be created @@ -42,5 +90,12 @@ command line switch are: BUILD_STATIC_LIBS -- Set to YES to build static libraries as well as dynamic LIB_SUFFIX -- Set to 64 on 64 bit systems to install in the lib64 dir -For more detailed information, see http://www.svxlink.org/ + +== Further reading == +More details can be found on the SvxLink web pages: + +* Main web page: http://www.svxlink.org/ +* Wiki main page: https://github.com/sm0svx/svxlink/wiki +* Installation instructions: + https://github.com/sm0svx/svxlink/wiki/InstallationInstructions