Installation Guide

Which Installation Should I Use?

srsRAN 4G can be installed from packages or from source. The following decision tree should help users decide which is best for them:

../../_images/download_decision.png

In short, users looking for a simple installation who only expect to run basic srsRAN 4G applications with USRP front-ends should use the package installation. Users who wish to modify srsRAN 4G and/or use alternative RF front-ends such as limeSDR and BladeRF should install from source.

Package Installation

The srsRAN 4G software suite can be installed using packages on Ubuntu:

sudo add-apt-repository ppa:softwareradiosystems/srsran
sudo apt-get update
sudo apt-get install srsran -y

Package installs are also available for other distributions.

Note, only the Launchpad packages for Ubuntu are maintained by SRS. Different distributions will maintain their own packages for srsRAN 4G, which may or may not be up to date. Check the available version before installing to ensure you are using the desired version of srsRAN 4G.

Fedora does not yet have support for a package installation of srsRAN 4G.

Installation from Source

For example, on Ubuntu, one can install the required libraries with:

sudo apt-get install build-essential cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev

or on Fedora:

dnf install cmake fftw3-devel mbedtls-devel lksctp-tools-devel libconfig-devel boost-devel

For CentOS, use the Fedora packages but replace libconfig-devel with just libconfig.

Note that depending on your flavor and version of Linux, the actual package names may be different.

  • Optional requirements:

    • srsGUI - for real-time plotting.

    • libpcsclite-dev - for accessing smart card readers

    • libdw-dev libdw - for truly informative backtraces using backward-cpp

Note

If using UHD we recommended the LTS version of UHD, i.e. either 3.9.7 or 3.15.

Warning

All mandatory requirements, optional requirements, and RF front-end drivers must be installed prior to building srsRAN 4G. Failing to do this will result in errors at run-time or prevent srsRAN 4G from building correctly.

Download and build srsRAN 4G:

git clone https://github.com/srsRAN/srsRAN_4G.git
cd srsRAN_4G
mkdir build
cd build
cmake ../
make
make test

Install srsRAN 4G:

sudo make install
srsran_install_configs.sh user

This installs srsRAN 4G and also copies the default srsRAN 4G config files to ~/.config/srsran.

Getting Support

Join the community on the srsRAN 4G users mailing list. The mailing list is a great place to ask questions, get support from the community and learn more about the various projects users are working on.