#!/bin/bash sudo apt-get update ## Install dependencies # sudo apt-get install -y autotools-dev sudo apt-get install -y automake # Required for run 'swig/autogen.sh' sudo apt-get install -y g++ make libpcre2-dev byacc # Required for swig install sudo apt-get install -y cmake python3-dev libsctp-dev # Required for flexric install # sudo apt-get install -y libpcre2-dev # sudo apt-get install -y pcre2-utils # sudo apt-get install -y bison # sudo apt-get install -y byacc # sudo apt-get install -y g++ # sudo apt-get install -y libsctp-dev python3.8 libpcre2-dev python3-dev ## Repository OAI dependencies sudo add-apt-repository ppa:ettusresearch/uhd -y sudo apt-get update -y ## OAI dependencies ## Testar com a libuhd4.4.0 ao invés de libuhd4.2.0u sudo apt-get install libuhd-dev uhd-host -y sudo apt-get install libuhd4.2.0 -y # Required for OpenAirInterface install sudo dpkg -i --force-overwrite /var/cache/apt/archives/libuhd4.2.0_4.2.0.1-0ubuntu1~focal1_amd64.deb # Work directory path is the current directory WORK_DIR=$HOME ## Configure swig - required for flexric cd $WORK_DIR/ git clone https://github.com/swig/swig.git cd $WORK_DIR/swig ./autogen.sh ./configure --prefix=/usr/ make sudo make install ## Install FlexRIC cd $WORK_DIR/ git clone https://gitlab.eurecom.fr/mosaic5g/flexric.git cd $WORK_DIR/flexric git checkout v1.0.0 mkdir $WORK_DIR/flexric/build cd $WORK_DIR/flexric/build cmake .. make sudo make install ## Install OAI UE and OAI gNB cd $WORK_DIR/ git clone https://gitlab.eurecom.fr/oai/openairinterface5g.git oai cd $WORK_DIR/oai git checkout 2022.41 git config --global user.email "you@example.com" git config --global user.name "Your Name" git am $WORK_DIR/flexric/multiRAT/oai/oai.patch --whitespace=nowarn ## Download the OAI configuration files (CU/DU, OAI UE, and gNB configuration) wget -O $WORK_DIR/oai/executables/nr-softmodem.c https://projetos.imd.ufrn.br/reginalab/sdran-openairinterface/-/raw/main/openairinterface5g/openairinterface-conf/nr-softmodem.c?inline=false wget -O $WORK_DIR/oai/targets/PROJECTS/GENERIC-NR-5GC/CONF/cu_gnb.conf https://projetos.imd.ufrn.br/reginalab/sdran-openairinterface/-/raw/main/openairinterface5g/openairinterface-conf/flexric_CU_DU_UE/cu_gnb.conf?inline=false wget -O $WORK_DIR/oai/targets/PROJECTS/GENERIC-NR-5GC/CONF/du_gnb.conf https://projetos.imd.ufrn.br/reginalab/sdran-openairinterface/-/raw/main/openairinterface5g/openairinterface-conf/flexric_CU_DU_UE/du_gnb.conf?inline=false wget -O $WORK_DIR/oai/targets/PROJECTS/GENERIC-NR-5GC/CONF/ue.conf https://projetos.imd.ufrn.br/reginalab/sdran-openairinterface/-/raw/main/openairinterface5g/openairinterface-conf/flexric_CU_DU_UE/ue.conf?inline=false source oaienv cd cmake_targets sudo ./build_oai -I -w USRP -i sudo ./build_oai --gNB --nrUE -c -C -w USRP --ninja --build-lib all