How to build

Setup build environment

Build environment for AGL IC container integration is same as AGL other profile build environment. 

1st step: please read Build Process Overview in AGL doc.

2nd step: please read Preparing Your Build Host in AGL doc.

3rd step:  Define Your Top-Level Directory.

export AGL_TOP=$HOME/AGL
mkdir -p $AGL_TOP

4th step: Download the repo Tool and Set Permissions

If your environment already install google repo, please skip this step.

mkdir -p $HOME/bin
export PATH=$HOME/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > $HOME/bin/repo
chmod a+x $HOME/bin/repo

5th step: Setup git

If your environment already setup user information for git, please skip this step.

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

6th step: Download the AGL Source Files

CES2024 Demo use master branch

cd $AGL_TOP
mkdir master export AGL_TOP=$HOME/AGL/master
cd $AGL_TOP repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo repo sync

7th step: Downloading Proprietary Drivers

7-1: Downloading Proprietary Drivers from Renesas-automotive-products.

7-2: To check the files to download.

grep -rn ZIP_.= $AGL_TOP/meta-agl/meta-agl-bsp/meta-rcar-gen3/scripts/setup_mm_packages.sh
export XDG_DOWNLOAD_DIR=$HOME/Downloads

7-3: Download and copy Proprietary Drivers files (Run commands at downloaded files directory).

cp R-Car_Gen3_Series_Evaluation_Software_Package_* $XDG_DOWNLOAD_DIR/
chmod a+rw $XDG_DOWNLOAD_DIR/*.zip

8th step: CES2024 extra

cd $AGL_TOP
git clone https://github.com/agl-ic-eg/meta-agl-demo-ces2024.git

Configure to target board and build.

Build to AGL demo IVI guest.

1st step: Configure 2nd build tree.

source meta-agl/scripts/aglsetup.sh -f -m h3ulcb -b build-ivi-refhw agl-container-guest-demo agl-demo agl-refhw-h3

2nd step: Add ces2024 layer to bblayers.conf

Add layer to bblayers.conf in $AGL_TOP/build-ivi-refhw/conf/

BBLAYERS =+ "\
  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024-demoivi \
  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024 \
  "

And add this to local.conf (Not mandatory)

VIRTUAL-RUNTIME_rngd = ""

3rd step: Build target images.

CES2024 integration need to build 4 image, these image are agl-ivi-demo-platform, agl-ivi-demo-platform-flutter, agl-ivi-demo-platform-flutter-simple and agl-ivi-demo-platform-html5.

bitbake agl-ivi-demo-platform
bitbake agl-ivi-demo-platform-flutter
bitbake agl-ivi-demo-platform-flutter-simple
bitbake agl-ivi-demo-platform-html5

Build to AGL host and cluster, momi IVI.

1st step:  Run the aglsetup.sh Script.

cd $AGL_TOP

When your board is AGL RefHW.

source meta-agl/scripts/aglsetup.sh -f -m h3ulcb -b build-ic-refhw agl-ic-container agl-refhw-h3

2nd step: Add ces2024 layer to bblayers.conf

Add layer to bblayers.conf in $AGL_TOP/build-ic-refhw/conf/

BBLAYERS =+ "\
  ${METADIR}/meta-agl-devel/meta-egvirt \
  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024 \
  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024-ic \
  "

And add this to site.conf ($AGL_TOP shall be set real path.)

MOMIMAP_MAPBOX_ACCESS_TOKEN = "your key"

OUT_OF_TREE_CONTAINER_IMAGE_DEPLOY_DIR = "$AGL_TOP/build-ivi-refhw/tmp/deploy"

2nd step: Build target image.

For SD card

bitbake agl-instrument-cluster-container-demo

For eMMC

bitbake agl-instrument-cluster-container-demo-emmc

Write image

to SD card

The CES2024 image is constructed by wic image, that include partition table and each partition data into one image file.

In default setting, that wic image is compressed xz.  When that wic image write to SD card, you need to use xzcat ant dd command in build PC.

sudo bash -c "xzcat /path/to/image/directory/agl-instrument-cluster-container-demo-h3ulcb.wic.xz | dd of=/dev/sdXXX bs=128M"

If you are missing to set SD card device "/dev/sdXXX", it cause SSD/HDD data break (only logical, not physical).

For example;

A /dev/sda is SSD for your PC.  A /dev/sdb is SD card.  You should use /dev/sdb, must not use /dev/sda.

When your PC has direct SD card interface not a use card reader, your SD card device is /dev/mmcblkX may be.

to eMMC

agl-instrument-cluster-container-demo-emmc-h3ulcb.wic.xz wirte to /dev/mmcblk0 at RefHW