3 1. l2/build/ : contains files required to compile the code
4 a. common : contains individual module's makefile
5 b. odu : contains main makefile to generate an executable binary
6 c. scripts: contains scripts for logging
8 2. l2/docs/ : contains README and other configuration files for building docs
10 2. l2/src/ : contains layer specific source code
11 a. 5gnrmac : MAC source code
12 b. 5gnrrlc : RLC source code
13 c. cm : common, environment and interface files
14 d. cu_stub : Stub code for CU
15 e. du_app : DU application and F1 code
16 f. mt : wrapper functions over OS
17 g. phy_stub : Stub code for Physical layer
18 h. rlog : logging module
21 Pre-requisite for Compilation :
22 -------------------------------
23 1. Linux 32-bit/64-bit machine
24 2. GCC version 4.6.3 and above
26 a. On Ubuntu : sudo apt-get install -y libsctp-dev
27 b. On CentOS : yum install lksctp-tools-devel
29 a. On ubuntu : sudo apt-get install -y libpcap-dev
30 b. On CentOS : yum install libpcap-devel
33 How to Clean and Build:
34 -----------------------
35 1. Building ODU binary:
38 b. Building ODU binary
39 make odu MACHINE=BIT64 MODE=FDD
40 c. Cleaning ODU binary
41 make clean_odu MACHINE=BIT64 MODE=FDD
43 2. Building CU Stub binary:
46 b. Building CU Stub binary
47 make cu_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
48 c. Cleaning CU Stub binary
49 make clean_cu NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
51 2. Building RIC Stub binary:
54 b. Building RIC Stub binary
55 make ric_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
56 c. Cleaning RIC Stub binary
57 make clean_ric NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
59 4. Cleaning ODU and CU Stub
60 make clean_all MACHINE=BIT64 MODE=FDD
64 1. Assign virtual IP addresses as follows:
65 ifconfig <interface name>:ODU "192.168.130.81"
66 ifconfig <interface name>:CU_STUB "192.168.130.82"
67 ifconfig <interface name>:RIC_STUB "192.168.130.80"
69 2. CU execution folder:
72 3. Run CU Stub binary:
75 4. RIC execution folder:
78 5. Run RIC Stub binary:
81 4. DU execution folder:
87 PS: CU stub and RIC stub must be run (in no particular sequence) before ODU