# <center>srsRAN with E2 Agent Installation Guide</center> srsRAN is a 4G/5G software radio suite developed by SRS. This is a modified version of [srsRAN 21.10](https://github.com/srsran/srsRAN) and [POWDER’s E2 agent enabled srsLTE](https://gitlab.flux.utah.edu/powderrenewpublic/srslte-ric). The srsRAN suite includes: - srsUE - a full-stack SDR 4G/5G-NSA UE application (5G-SA coming soon) - srsENB - a full-stack SDR 4G/5G-NSA eNodeB application (5G-SA coming soon) - srsEPC - a light-weight 4G core network implementation with MME, HSS and S/P-GW # Dependencies Installation ```bash sudo apt-get install build-essential cmake libfftw3-dev libmbedtls-dev libboost-program-options-dev libconfig++-dev libsctp-dev libtool autoconf ``` # ZeroMQ Installation ```bash sudo apt-get install libzmq3-dev ``` # UHD 4.1 Installation ```bash sudo add-apt-repository ppa:ettusresearch/uhd sudo apt-get update sudo apt-get install libuhd-dev libuhd4.1.0 uhd-host ``` # asn1c Compiler Installation ```bash cd ../.. sudo apt install libtool autoconf git clone https://gitlab.eurecom.fr/oai/asn1c.git cd asn1c git checkout velichkov_s1ap_plus_option_group autoreconf -iv ./configure make -j`nproc` sudo make install sudo ldconfig cd .. ``` # srsRAN with E2 agent Installation ==This step will have to be performed again if any of the above librarires change. For example, if UHD is updated, you will have to re-build srsRAN to make use of the updated library.== ```bash cd srsRAN-e2 mkdir build export SRS=`realpath .` cd build cmake ../ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DRIC_GENERATED_E2AP_BINDING_DIR=${SRS}/e2_bindings/E2AP-v01.01 \ -DRIC_GENERATED_E2SM_KPM_BINDING_DIR=${SRS}/e2_bindings/E2SM-KPM \ -DRIC_GENERATED_E2SM_GNB_NRT_BINDING_DIR=${SRS}/e2_bindings/E2SM-GNB-NRT make -j`nproc` sudo make install sudo ldconfig srsran_install_configs.sh user --force cd ../../ ```