From: Jackie Huang Date: Fri, 9 Jun 2023 01:24:23 +0000 (+0800) Subject: developer-guide: update for H Release X-Git-Tag: i-release~3 X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?p=pti%2Frtp.git;a=commitdiff_plain;h=4b49b4d6d391b82fa9eb4d1e9ef837c4d6e799c1 developer-guide: update for H Release Issue-ID: INF-407 Signed-off-by: Jackie Huang Change-Id: Ic1afd5c7226c81eb224d4c45ea4315dcd86eeedf --- diff --git a/docs/developer-guide.rst b/docs/developer-guide.rst index b5ce09f..41e1391 100755 --- a/docs/developer-guide.rst +++ b/docs/developer-guide.rst @@ -24,6 +24,13 @@ Notes: * Debian based is the recommended platfrom. * The intended audiences of this guide are the developers who want to develop/integrate apps in INF platform, if you just want to install and deploy INF platform, you can ignore this guide and read the `INF Installation Guide`_ +Experimental feature: +* INF project starts to support ARM64 architecture in this release as experimental feature (POC level), limited features implemented and tested. + + * It can only be natively built on HPE RL300 Gen11 server (Ampere Altra). + * AIO-SX (std kernel) tested on VM and HPE RL300 server. + * AIO-DX (std kernel) tested on VM. + .. _`INF Installation Guide`: https://docs.o-ran-sc.org/projects/o-ran-sc-pti-rtp/en/latest/installation-guide.html 1.1 About the Debian based implementaion @@ -136,9 +143,9 @@ The recommended and tested host is Ubuntu 16.04/18.04 and CentOS 7. * To install the required packages for Ubuntu 16.04/18.04: -.. _`Compatible Linux Distribution`: https://www.yoctoproject.org/docs/2.7.3/brief-yoctoprojectqs/brief-yoctoprojectqs.html#brief-compatible-distro -.. _`Supported Linux Distributions`: https://www.yoctoproject.org/docs/2.7.3/ref-manual/ref-manual.html#detailed-supported-distros -.. _`Required Packages for the Build Host`: https://www.yoctoproject.org/docs/2.7.3/ref-manual/ref-manual.html#required-packages-for-the-build-host +.. _`Compatible Linux Distribution`: https://docs.yoctoproject.org/2.7.4/brief-yoctoprojectqs/brief-yoctoprojectqs.html#brief-compatible-distro +.. _`Supported Linux Distributions`: https://docs.yoctoproject.org/2.7.4/ref-manual/ref-manual.html#detailed-supported-distros +.. _`Required Packages for the Build Host`: https://docs.yoctoproject.org/2.7.4/ref-manual/ref-manual.html#required-packages-for-the-build-host :: @@ -174,3 +181,50 @@ The recommended and tested host is Ubuntu 16.04/18.04 and CentOS 7. If all go well, you will get the ISO image in: ${WORKSPACE}/prj_output/inf-image-yocto-aio-x86-64.iso +2.4 How to build the Debian based image for ARM64 arch +------------------------------------------------------ + +2.4.1 Prerequisite for Debian build environment ++++++++++++++++++++++++++++++++++++++++++++++++ + +NOTE: + * The build env only tested on HPE RL300 server (Ampere Altra). + * The build system for Debian requires a Linux system with Docker and python 3.x installed. The the following steps have been tested on Debian 11. + +* Refer to `Install docker on ubuntu`_ or `Install docker on centos`_ to install docker. +* Refer to `Configure_Debian_build_environment`_ to install prerequisite packges and configure for Debian build environment. + +.. _`Install docker on debian`: https://docs.docker.com/engine/install/debian/ +.. _`Configure_Debian_build_environment`: https://wiki.openstack.org/wiki/StarlingX/DebianBuildEnvironment#Configure_build_environment + +2.4.2 Use wrapper script build_stx_debian.sh to build the Debian based image +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +:: + + # Get the wrapper script to build the debian image + $ wget -O build_stx_debian.sh 'https://gerrit.o-ran-sc.org/r/gitweb?p=pti/rtp.git;a=blob_plain;f=scripts/build_inf_debian/build_stx_debian.sh;hb=HEAD' + + $ chmod +x build_stx_debian.sh + $ WORKSPACE=/path/to/workspace + $ ./build_stx_debian.sh -w ${WORKSPACE} -a arm64 + + +The build-image will always fail for now, do the following workaround after build-image fails: + +:: + + cd ${WORKSPACE} + source env.prj-stx-deb + cd src/stx-tools + source import-stx + + stx shell --container lat + + # inside the LAT pod + cd /localdisk + . /opt/LAT/SDK/environment-setup-cortexa57-wrs-linux + appsdk --log-dir log genimage lat.yaml + +If all go well, you will get the ISO image in: +${WORKSPACE}/localdisk/deploy/starlingx-qemuarm64-cd.iso