|
|
---+ Building OAI executables (Release 0.1,0.2)
|
|
|
|
|
|
OAI comes with a automated build script (beta version) located at the root of the targets.Currently, the tool is developped to build the eNB for different hardware platforms, 3GPP releases, standalone or with S1 interface, and target execution. It will be later extended to build the EPC.
|
|
|
|
|
|
Before using the tool, you need to set the openair env variables as follows:
|
|
|
|
|
|
echo "source [path_to_openair_dir]/targets/build_helper.bash ; set_openair_env " >> ~/.bashrc
|
|
|
|
|
|
source ~/.bashrc
|
|
|
|
|
|
Alternatively, set manually the OAI envorionement variables in .bashrc as follows (targets/README.txt):
|
|
|
|
|
|
export OPENAIR_HOME=path_to_openair_dir --> You need to set your
|
|
|
|
|
|
export OPENAIR1_DIR=$OPENAIR_HOME/openair1
|
|
|
|
|
|
export OPENAIR2_DIR=$OPENAIR_HOME/openair2
|
|
|
|
|
|
export OPENAIR3_DIR=$OPENAIR_HOME/openair3
|
|
|
|
|
|
export OPENAIR_TARGETS=$OPENAIR_HOME/targets
|
|
|
|
|
|
export OPENAIRCN_DIR=$OPENAIR_HOME/openair-cn
|
|
|
|
|
|
To run the tool, use the command build_oai.bash in the target directory. Various options are availables, try build_oai.bash -h.
|
|
|
|
|
|
Name : build_oai - install and build OAI<br />Usage: build_oai.bash -a -b -c -d -e RTAI -m -r REL8 -s -t OAISIM -w EXMIMO -x
|
|
|
* -a | --doxygen : Enable doxygen for documentation (default disabled)
|
|
|
* -b | --disable-s1 : Disable S1 interface for eNB (default enabled)
|
|
|
* -c | --clean : Enable clean OAI build (default disabled)
|
|
|
* -C | --config-file [file] : Set the config file local path.
|
|
|
* -d | --debug : Enable debug mode (default disabled)
|
|
|
* -D | --disable-check-installed-software : Disable the checking of installed software (default is check)
|
|
|
* -e | --realtime : Set realtime mode: RTAI, NONE (default NONE)
|
|
|
* -g | --run-with-gdb : Run the executable built by this script with gdb
|
|
|
* -K | --itti-dump-file [file]: Set the execution events trace file
|
|
|
* -l | --build-target [LTE target]: Set the LTE build target: ENB,EPC,HSS,NONE (default NONE)
|
|
|
* -m | --build-from-makefile : Enable build from the makefile (default disabled)
|
|
|
* -r | --3gpp-release [release]: Set the release: REL8, REL10 (default REL8)
|
|
|
* -R | --run : Run the executable built by this script
|
|
|
* -s | --check : Enable OAI testing and sanity check (default disabled)
|
|
|
* -t | --enb-build-target [eNB target]: Set the eNB build target: ALL, SOFTMODEM,OAISIM,UNISIM (default ALL)
|
|
|
* -V | --vcd : Log Value change dump (vcd) events and view the output file using GTKWave
|
|
|
* -w | --hardware [hardware]: Set the hardware platform: EXMIMO, USRP (also installs UHD driver), ETHERNET, NONE, (default EXMIMO)
|
|
|
* -x | --xforms : Enable xforms (default disabled)
|
|
|
* -z | --defaults : Set the default build options
|
|
|
The tool creates a bin subdirectory in targets and copies all the binaries/executables there.
|
|
|
|
|
|
* This is Ethernet interface for lte softmodem used in two different setting:
|
|
|
1 <strong>Emulation:</strong> eNB<--I/Q samples --> Channel emulator <--I/Q samples--> UE
|
|
|
1 <strong>Remote radio head (RRH) interfcae:</strong> eNB <--I/Q samples --> RRH
|
|
|
** This option is mainly for oaisim and unisim.
|
|
|
---+++ eNB Build Examples
|
|
|
---+++++ Install, Build, and test ALL (LTE-SOFTMODEM, OAISIM, UNISIM)
|
|
|
* eNB + EXMIMO + test: build_oai.bash -l ENB -c -s
|
|
|
* eNB + EXMIMO + RTAI: build_oai.bash -l ENB -c -e RTAI
|
|
|
* eNB + USRP: build_oai.bash -l ENB -c -w USRP
|
|
|
* eNB+ ETHERNET : build_oai.bash -l ENB -c -w ETHERNET
|
|
|
---+++++ Build LTE softmodem (L3/L2/L1)
|
|
|
* EXMIMO: build_oai.bash -t SOFTMODEM -l ENB
|
|
|
* USRP: build_oai.bash -w USRP -t SOFTMODEM -l ENB
|
|
|
---+++++ Build and run LTE softmodem without checking the installed software (L3/L2/L1)
|
|
|
* EXMIMO: build_oai.bash -t SOFTWARE -l ENB -D -R -C $OPENAIR_TARGETS/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.exmimo2.conf
|
|
|
* USRP: build_oai.bash -w USRP -t SOFTWARE -l ENB -D -R -C $OPENAIR_TARGETS/PROJECTS/GENERIC-LTE-EPC/CONF/enb.band7.tm1.usrpb210.conf
|
|
|
Notes:
|
|
|
* Add -x to enable xforms (soft scope)
|
|
|
* Add -V to enable VCD file generation
|
|
|
* Add -K /tmp/itti_enb.log for itti logs
|
|
|
---+++++ Build OAISIM(L3/L2/L1.5 emulation)
|
|
|
* <p>E-UTRAN: build_oai.bash -l ENB -t OAISIM -w NONE -b</p>
|
|
|
* E-UTRAN+S1: build_oai.bash -l ENB -t OAISIM -w NONE
|
|
|
If you plan todeploy OAI on multiple machines, please use the examples in targets/SIMU/EXAMPLES/ e.g ETH_EMUL_1eNB_1UE (this feature will be integrated into build script very soon)
|
|
|
* <strong>compile:</strong> make all
|
|
|
* *setup*: define the eth interface to be used for the emulation transport by setting the variable EMULATION_DEV_INTERFACE in the run scripts (see below).
|
|
|
* <strong>run:</strong> use the start_enb and start_ue scripts (user should be a sudoer)
|
|
|
|
|
|
---+++ Build EPC without running (MME + xGW)
|
|
|
|
|
|
Normally runs in a different (physical or virtual) machine.
|
|
|
* standalone: build_oai.bash -c -l EPC
|
|
|
* Standalone with logs: build_oai.bash -c -l EPC -K /tmp/itti_epc_softmodem.log
|
|
|
---+++ Build and run EPC without checking the installation (MME + xGW)
|
|
|
|
|
|
Normally runs in a different (physical or virtual) machine.
|
|
|
* standalone: build_oai.bash -l EPC -R -C $OPENAIR_TARGETS/PROJECTS/GENERIC-LTE-EPC/CONF/epc.generic.conf
|
|
|
* Standalone with extra logs: build_oai.bash -l EPC -K /tmp/itti_epc_softmodem.log -D -R -C $OPENAIR_TARGETS/PROJECTS/GENERIC-LTE-EPC/CONF/epc.generic.conf
|
|
|
---+++ Build and run HSS ( beta version)
|
|
|
|
|
|
Normally runs in a different (physical or virtual) machine. This feature is experimental.
|
|
|
* <p>build_oai.bash -c -l HSS -R</p>
|
|
|
---+++++ Instrunctions for installing phpmyadmin for HSS when prompted
|
|
|
|
|
|
1 Configure database for phpmyadmin with dbconfig-common? SELECT <Yes>
|
|
|
1 Please provide the password for the administrative account with which this package should create its MySQL database and user. Password of the database's administrative user: The mysql administrative user.
|
|
|
1 Please provide a password for phpmyadmin to register with the database server. If left blank, a random password will be generated. MySQL application password for phpmyadmin: admin.
|
|
|
1 Password confirmation: admin
|
|
|
1 Please choose the web server that should be automatically configured to run phpMyAdmin. Web server to reconfigure automatically: [*] apache2 <br />[ ] lighttpd
|
|
|
-- User.RohitGupta - 19 Jun 2015 |