Open5gs: Compile: Difference between revisions
From OnnoCenterWiki
Jump to navigationJump to search
| Line 47: | Line 47: | ||
libtalloc-dev meson | libtalloc-dev meson | ||
==Git clone== | ==Git clone & Compile== | ||
Clone source code dari github | Clone source code dari github | ||
| Line 61: | Line 61: | ||
ninja -C build | ninja -C build | ||
==Test== | |||
./build/tests/attach/attach | Cek EPC (4G) | ||
./build/tests/registration/registration | |||
./build/tests/attach/attach | |||
Hasilnya, | |||
s1setup-test : SUCCESS | |||
simple-test : SUCCESS | |||
guti-test : SUCCESS | |||
auth-test : SUCCESS | |||
idle-test : SUCCESS | |||
emm-status-test : SUCCESS | |||
ue-context-test : SUCCESS | |||
reset-test : SUCCESS | |||
issues-test : SUCCESS | |||
All tests passed. | |||
Cek Core (5G) | |||
./build/tests/registration/registration | |||
Hasilnya, | |||
simple-test : SUCCESS | |||
guti-test : SUCCESS | |||
auth-test : SUCCESS | |||
ecc-test : SUCCESS | |||
idle-test : SUCCESS | |||
dereg-test : SUCCESS | |||
paging-test : SUCCESS | |||
identity-test : SUCCESS | |||
gmm-status-test : SUCCESS | |||
ue-context-test : SUCCESS | |||
reset-test : SUCCESS | |||
multi-ue-test : SUCCESS | |||
All tests passed. | |||
Lakukan Full Test | |||
cd build | cd build | ||
meson test -v | meson test -v | ||
Pastikan tidak ada Error, | |||
ninja: Entering directory `/usr/local/src/open5gs/build' | |||
ninja: no work to do. | |||
1/13 open5gs:unit / core RUNNING | |||
>>> MALLOC_PERTURB_=59 /usr/local/src/open5gs/build/tests/core/core | |||
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ✀ | |||
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― | |||
list-test : SUCCESS | |||
pool-test : SUCCESS | |||
strings-test : SUCCESS | |||
time-test : SUCCESS | |||
conv-test : SUCCESS | |||
log-test : SUCCESS | |||
.... | |||
.... | |||
.... | |||
12/13 open5gs:app / handover OK 13.56s | |||
13/13 open5gs:epc / non3gpp RUNNING | |||
>>> MALLOC_PERTURB_=75 /usr/local/src/open5gs/build/tests/non3gpp/non3gpp | |||
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ✀ | |||
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― | |||
epdg-test : SUCCESS | |||
All tests passed. | |||
――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― | |||
13/13 open5gs:epc / non3gpp OK 7.63s | |||
Ok: 13 | |||
Expected Fail: 0 | |||
Fail: 0 | |||
Unexpected Pass: 0 | |||
Skipped: 0 | |||
Timeout: 0 | |||
Full log written to /usr/local/src/open5gs/build/meson-logs/testlog.txt | |||
cd build | Pastikan tidak ada yang Fail. | ||
==Install Open5gs== | |||
cd /usr/local/src/open5gs/build | |||
ninja install | ninja install | ||
cd ../ | cd ../ | ||
Latest revision as of 01:59, 22 July 2023
Sistem Operasi Ubuntu 22.04
Install MongoDB
Import public key
sudo apt update sudo apt install gnupg curl -fsSL https://pgp.mongodb.com/server-6.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-6.0.gpg --dearmor
Buat file /etc/apt/sources.list.d/mongodb-org-6.0.list
Di Ubuntu 22.04 (Jammy)
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-6.0.gpg] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
Install MongoDB
sudo apt update sudo apt install -y mongodb-org sudo systemctl start mongod sudo systemctl enable mongod
Tip: MongoDB digunakan sebagai database untuk NRF/PCF/UDR dan PCRF/HSS.
Setup TUN device (not persistent)
Buat TUN device dengan nama interface ogstun.
sudo ip tuntap add name ogstun mode tun sudo ip addr add 10.45.0.1/16 dev ogstun sudo ip addr add 2001:db8:cafe::1/48 dev ogstun sudo ip link set ogstun up
Tip: script ini tersedia di $GIT_REPO/misc/netconf.sh yang akan memudahkan kita dapat mengkonfigurasi TUN device:
sudo ./misc/netconf.sh
Install Pendukung
Install Dependency
sudo apt update sudo apt y install python3-pip python3-setuptools python3-wheel ninja-build build-essential flex bison \ git cmake libsctp-dev libgnutls28-dev libgcrypt-dev libssl-dev libidn11-dev libmongoc-dev libbson-dev \ libyaml-dev libnghttp2-dev libmicrohttpd-dev libcurl4-gnutls-dev libnghttp2-dev libtins-dev \ libtalloc-dev meson
Git clone & Compile
Clone source code dari github
rm -Rf /usr/local/src/open5gs cd /usr/local/src git clone https://github.com/open5gs/open5gs
Compile menggunakan Meson
cd /usr/local/src/open5gs meson build --prefix=`pwd`/install ninja -C build
Test
Cek EPC (4G)
./build/tests/attach/attach
Hasilnya,
s1setup-test : SUCCESS simple-test : SUCCESS guti-test : SUCCESS auth-test : SUCCESS idle-test : SUCCESS emm-status-test : SUCCESS ue-context-test : SUCCESS reset-test : SUCCESS issues-test : SUCCESS All tests passed.
Cek Core (5G)
./build/tests/registration/registration
Hasilnya,
simple-test : SUCCESS guti-test : SUCCESS auth-test : SUCCESS ecc-test : SUCCESS idle-test : SUCCESS dereg-test : SUCCESS paging-test : SUCCESS identity-test : SUCCESS gmm-status-test : SUCCESS ue-context-test : SUCCESS reset-test : SUCCESS multi-ue-test : SUCCESS All tests passed.
Lakukan Full Test
cd build meson test -v
Pastikan tidak ada Error,
ninja: Entering directory `/usr/local/src/open5gs/build' ninja: no work to do. 1/13 open5gs:unit / core RUNNING >>> MALLOC_PERTURB_=59 /usr/local/src/open5gs/build/tests/core/core ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― list-test : SUCCESS pool-test : SUCCESS strings-test : SUCCESS time-test : SUCCESS conv-test : SUCCESS log-test : SUCCESS .... .... .... 12/13 open5gs:app / handover OK 13.56s 13/13 open5gs:epc / non3gpp RUNNING >>> MALLOC_PERTURB_=75 /usr/local/src/open5gs/build/tests/non3gpp/non3gpp ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ✀ ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― epdg-test : SUCCESS All tests passed. ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― 13/13 open5gs:epc / non3gpp OK 7.63s Ok: 13 Expected Fail: 0 Fail: 0 Unexpected Pass: 0 Skipped: 0 Timeout: 0 Full log written to /usr/local/src/open5gs/build/meson-logs/testlog.txt
Pastikan tidak ada yang Fail.
Install Open5gs
cd /usr/local/src/open5gs/build ninja install cd ../