Introduction

            This page describes the lists of configuration ,compilation and installation errors while creating the zilker-sdk recipe in yocto build environment.

Build Steps 

Please refer the below link for dunfell build steps ,

RPI 3B/3B+ Model Reference Platform


Recipe Path :

                               ~/meta-cmf-broadband/recipes-iot/zilker-sdk/zilker-sdk_git.bb


Errors and Challenges in yocto

S.NoRecipe Layer Error/WarningRoot CauseAction 
1

zilker_sdk_git.bb

meta-cmf-broadband 

Error: Missing SRC_URI checksum

not added checksum Added sha256sum
checksum 
2zilker-sdk_git.bbmeta-cmf-broadband Error:

zilker-sdk_git-r0 do_fetch: Fetcher failure for URL: 


not add SRC_URI properly SRC_URI = "${CMF_GITHUB_ROOT}/zilker-sdk;protocol=${CMF_GIT_PROTOCOL};branch=${CMF_GITHUB_MAIN_BRANCH};name=zilker-sdk"
SRCREV_zilker-sdk = "${AUTOREV}"
SRCREV_FORMAT .= "_zilker-sdk"
3zilker-sdk_git.bbmeta-cmf-broadband 

fatal error: ccronexpr.h: No such file or directory
|   37 | #include <ccronexpr.h>
|      |         ^~~~~~~~~~~~~
| compilation terminated.
| ninja: build stopped: subcommand failed.


ccronexpr source code is not available in zilker-sdk/gitr0/git/source/services/automation/core/srcSRC_URI += "git://github.com/staticlibs/ccronexpr.git;protocol=https;destsuffix=git/source/services/automation/core/src/ccronexpr;name=zilker-ccronexpr"
SRCREV_zilker-ccronexpr = "${AUTOREV}"
SRCREV_FORMAT .= "_zilker-ccronexpr"
4zilker-sdk_git.bbmeta-cmf-broadband 

 error: cannot find -lccronexpr


linking Error


Need to remove the ccronexpr lib from ~/source/services/automation/core/CMakeLists.txt

5zilker-sdk_git.bbmeta-cmf-broadband 

error: gradle command not found

gradle bin is not availble in comcast VM's

SRC_URI += "https://services.gradle.org/distributions/gradle-4.8.1-bin.zip;name=zilker-gradle"
SRC_URI[zilker-gradle.md5sum] = "90db63b9cd864a6e6bc8d0c5e72ca5a2"
SRC_URI[zilker-gradle.sha256sum] = "af334d994b5e69e439ab55b5d2b7d086da5ea6763d78054f49f147b06370ed71"


6zilker-sdk_git.bbmeta-cmf-broadband Error : java command not foundjava bin path is not visible to ipcGenerator scriptsed -i "/set \-x/a export PATH=\$PATH:\${WORKDIR}/gradle-4.8.1/bin:/usr/bin" ${S}/tools/ipcGenerator/ipcGenerator.sh
7zilker-sdk_git.bbmeta-cmf-broadband CMake Error at buildTools/cmake/configure.cmake:52 (message):
  Invalid CONFIG_PRODUCT specified.
Call Stack (most recent call first):
  CMakeLists.txt:55 (include)
CONFIG_PRODUCT should be mapped with site-file.cmake

ln -fs ${S}/buildTools/cmake/products/pi.cmake ${WORKDIR}/site-file.cmake

8zilker-sdk_git.bbmeta-cmf-broadband CMake Error at filesystem/cmake_install.cmake:69 (file):
|   file INSTALL cannot find
|   ~//zilker/git-r0/recipe-sysroot/usr/bin/curl":
|   No such file or directory.
| Call Stack (most recent call first):
|   cmake_install.cmake:86 (include)

3rd-Party Dependencies are enabled


Disabled the 3rd-Party Dependencies
9zilker-sdk_git.bbmeta-cmf-broadband 
CMake Error at buildTools/cmake/modules/AddZilkerAPI.cmake:52 (add_library):
| No SOURCES given to target: xhBackupRestoreServiceAPI
| Call Stack (most recent call first):
| source/services/backupRestore/api/c/CMakeLists.txt:26 (add_zilker_api)
|
ipcGenerator.sh execution gets failed Need to export the gradle and java bin path via recipe or ipcGenerator script
10zilker-sdk_git.bbmeta-cmf-broadband 

ERROR : CONFIG_CAP_ZIGBEE_TELEMETRY 

zigbee package is enabled by default in source code

Need to disable the zigbee package by using the below line in recipe

sed -i "s/ON DEPENDS/OFF DEPENDS/g" ${S}/buildTools/cmake/capabilities.cmake

11zilker-sdk_git.bbmeta-cmf-broadbandERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.

| Please set the JAVA_HOME variable in your environment to match the
| location of your Java installation.
ipcGenerator.sh execution  gets failedNeed to export the gradle and java bin path via recipe or ipcGenerator script
12zilker-sdk_git.bbmeta-cmf-broadband

Image folder is empty after the  successful execution of zilker-sdk

oe-install command is not available in pi.cmake

echo "set(OE_INSTALL_PREFIX \"/opt/zilker\" CACHE INTERNAL \"\")" >> ${S}/buildTools/cmake/products/pi.cmake


Added this line in zilker-sdk_git.bb

13zilker-sdk_git.bbmeta-cmf-broadband 

lib folder is empty under the image directory after the  successful execution of zilker-sdk

All lib are generated in /opt/zilkermv ${D}${ZILKER_INSTALL_PREFIX}/lib/* ${D}/usr/lib
14zilker-sdk_git.bbmeta-cmf-broadband xml file is missing after the  successful execution of zilker-sdkxml file is not generated in /opt/zilkercp ${S}/source/services/rdkIntegration/config/XHFW.xml ${D}/usr/ccsp/xhfw
15zilker-sdk_git.bbmeta-cmf-broadband Error : Files are not shiftedFILES_${PN} needs to be addedFILES_${PN} += " \
        ${ZILKER_INSTALL_PREFIX}/bin \
        ${ZILKER_INSTALL_PREFIX}/lib \
        ${ZILKER_INSTALL_PREFIX}/include \
        ${ZILKER_INSTALL_PREFIX}/sbin \
        ${ZILKER_INSTALL_PREFIX}/etc \
        ${ZILKER_INSTALL_PREFIX}/stock \
        ${ZILKER_INSTALL_PREFIX}/ccsp \
        /usr/lib/* \
        /usr/ccsp/xhfw \ "


Validated Test Results

            Below list of libraries and binaries are generated by zilker-sdk recipe in rootfs folder in  yocto build environment.

kpandu549@dvm-yocto3-docker-kpandu549:~/keerthana/jun1/build-raspberrypi-rdk-broadband/tmp/work/raspberrypi_rdk_broadband-rdk-linux-gnueabi/rdk-generic-broadband-image/1.0-r0/rootfs/opt/zilker$ ls
bin  etc  include  lib  sbin  stock

kpandu549@dvm-yocto3-docker-kpandu549:~/keerthana/jun1/build-raspberrypi-rdk-broadband/tmp/work/raspberrypi_rdk_broadband-rdk-linux-gnueabi/rdk-generic-broadband-image/1.0-r0/rootfs/opt/zilker$ cd bin/
kpandu549@dvm-yocto3-docker-kpandu549:~/keerthana/jun1/build-raspberrypi-rdk-broadband/tmp/work/raspberrypi_rdk_broadband-rdk-linux-gnueabi/rdk-generic-broadband-image/1.0-r0/rootfs/opt/zilker/bin$ ls
env.sh            xhBackup.sh   xhCronEventUtil  xhProperties              xhRestore.sh   xhSetup.sh    xhSystemInfo
xhAutomationUtil  xhBackupUtil  xhDeviceUtil     xhResetToFactoryDefaults  xhServiceUtil  xhStartup.sh


kpandu549@dvm-yocto3-docker-kpandu549:~/keerthana/jun1/build-raspberrypi-rdk-broadband/tmp/work/raspberrypi_rdk_broadband-rdk-linux-gnueabi/rdk-generic-broadband-image/1.0-r0/rootfs/usr/lib$ ls -lh libxh*
-rwxr-xr-x 1 kpandu549 kpandu549  18K Jun  1 12:01 libxhAutomationServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549  14K Jun  1 12:01 libxhBackupRestoreServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549  39K Jun  1 12:01 libxhCommServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549  27K Jun  1 12:01 libxhConcurrent.so
-rwxr-xr-x 1 kpandu549 kpandu549  22K Jun  1 12:01 libxhConfig.so
-rwxr-xr-x 1 kpandu549 kpandu549  14K Jun  1 12:01 libxhCron.so
-rwxr-xr-x 1 kpandu549 kpandu549  14K Jun  1 12:01 libxhCrypto.so
-rwxr-xr-x 1 kpandu549 kpandu549  39K Jun  1 12:01 libxhCslt.so
-rwxr-xr-x 1 kpandu549 kpandu549  18K Jun  1 12:01 libxhDeviceDescriptors.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.8K Jun  1 12:01 libxhDeviceHelper.so
-rwxr-xr-x 1 kpandu549 kpandu549  93K Jun  1 12:01 libxhDeviceServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.7K Jun  1 12:01 libxhDeviceSimplified.so
-rwxr-xr-x 1 kpandu549 kpandu549  39K Jun  1 12:01 libxhIpc.so
-rwxr-xr-x 1 kpandu549 kpandu549 5.6K Jun  1 12:01 libxhJsonHelper.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.7K Jun  1 12:01 libxhJsonrpc.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.7K Jun  1 12:01 libxhLog.so
-rwxr-xr-x 1 kpandu549 kpandu549  27K Jun  1 12:01 libxhPropsServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549  14K Jun  1 12:01 libxhReset.so
-rwxr-xr-x 1 kpandu549 kpandu549 5.6K Jun  1 12:01 libxhSolar.so
-rwxr-xr-x 1 kpandu549 kpandu549  18K Jun  1 12:01 libxhSsdp.so
-rwxr-xr-x 1 kpandu549 kpandu549 5.4K Jun  1 12:01 libxhSysInfoHAL.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.7K Jun  1 12:01 libxhSystem.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.7K Jun  1 12:01 libxhTime.so
-rwxr-xr-x 1 kpandu549 kpandu549  18K Jun  1 12:01 libxhTypes.so
-rwxr-xr-x 1 kpandu549 kpandu549  22K Jun  1 12:01 libxhUrlHelper.so
-rwxr-xr-x 1 kpandu549 kpandu549  26K Jun  1 12:01 libxhUtil.so
-rwxr-xr-x 1 kpandu549 kpandu549  23K Jun  1 12:01 libxhWatchdogServiceAPI.so
-rwxr-xr-x 1 kpandu549 kpandu549 9.6K Jun  1 12:01 libxhXmlHelper.so


References

                    https://github.com/rdkcentral/zilker-sdk/blob/main/BUILDING.md