For more information, including FAQs and resources, please visit the link below:
RDKM-SSO
Any questions or comments please feel free to contact RDK Support team support@rdkcentral.com . Thank you. ***
The OpenEmbedded build system should be able to run on Ubuntu 18.04 distribution/other compatible linux distribution with the following versions for Git, tar, and Python.
Note: You should also have about 50 Gbytes of free disk space for building images.
The essential packages you need for a supported Ubuntu or Debian distribution are shown in the following command:
$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \ xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \ pylint3 xterm bmap-tools $ sudo apt-get install git cmake autoconf texinfo openjdk-8-jdk openjdk-8-jre \ m4 libtool libtool-bin curl pkg-config lib32z1 doxygen
In order to use Yocto build system, the repo tool must be properly installed on the machine.
To install Repo make sure you have a /bin directory in your home directory and that it is included in your path
$ mkdir ~/bin $ PATH=~/bin:$PATH Download the repo tool and ensure that it is executable $ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo
Note: it is also recommended to put credentials in ~/.netrc when interacting with repo.
A sample ~/.netrc file is illustrated below
machine code.rdkcentral.com login YOUR_USERNAME password YOUR_PASSWORD
To build, follow below instructions
$ mkdir <workspace dir> $ cd <workspace dir> $ repo init -u https://code.rdkcentral.com/r/manifests -b dunfell -m rdkb-extsrc.xml $ repo sync -j`nproc` --no-clone-bundle
Note : The above bug fixes changes are temporary given as instructions. This is not required once the change is gets merged into the appropriate repo.
$ MACHINE=raspberrypi4-64-rdk-broadband source meta-cmf-raspberrypi/setup-environment $ bitbake rdk-generic-broadband-image
Following command can be used to flash the RPI image to sd card using linux machine . bmap tool should be available in linux
bzip2 -d <path to ImageName.wic.bz2> sudo -E bmaptool copy --nobmap <path to ImageName.wic> <path to SD card space> Example: $ bzip2 -d rdk-generic-broadband-image-raspberrypi4-64-rdk-broadband.wic.bz2 $ sudo -E bmaptool copy --nobmap rdk-generic-broadband-image-raspberrypi4-64-rdk-broadband.wic /dev/sdb
S.No |
Recipe |
Layer |
Error/Warning | Action taken |
---|---|---|---|---|
1 | ccsp-common-library | meta-cmf-raspberrypi | ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c: In function 'AnscUIntArrayGetAt': ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c:278:16: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] 278 | return (ANSC_OBJECT_ARRAY_DATA)pStorage[ulIndex]; ^ ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c: In function 'AnscUIntArraySetAt': ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c:334:31: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] 334 | pStorage[ulIndex] = (UINT)Data; ^ ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c: In function 'AnscUIntArrayInsertAt': ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c:415:39: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] 415 | pStorage[i + ulIndex] = (UINT)Data; ^ ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c: In function 'AnscUIntArrayAdd': ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c:530:52: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] 530 | pStorage[pUIntArray->ulItemCount ++] = (UINT)Data; ^ ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c: In function 'AnscUIntArrayFind': ../../../../../../../../../../../../rdkb/components/opensource/ccsp/CcspCommonLibrary/source/cosa/utilities/AnscObjectArray/AnscUIntArray/ansc_uint_array_co_process.c:663:51: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] 663 | UINT uSample = (UINT)Data; | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
2 | zilker-sdk | meta-cmf-broadband | /tmp/ccBNkS8g.o(.text+0x960): unresolvable R_AARCH64_ADR_PREL_PG_HI21 relocation against symbol `stderr@@GLIBC_2.17' | /home/kpandu549/keerthana/sep14/build-raspberrypi4-64-rdk-broadband/tmp/work/aarch64-rdk-linux/ccronexpr/git-r0/recipe-sysroot-native/usr/bin/aarch64-rdk-linux/../../libexec/aarch64-rdk-linux/gcc/aarch64-rdk-linux/9.3.0/ld: final link failed: bad value | collect2: error: ld returned 1 exit status | Makefile:26: recipe for target 'library' failed | make: *** [library] Error 1 | make: Leaving directory '/home/kpandu549/keerthana/sep14/build-raspberrypi4-64-rdk-broadband/tmp/work/aarch64-rdk-linux/ccronexpr/git-r0/git' | WARNING: exit code 1 from a shell command. | CFLAGS_append_aarch64 = " -fPIC" used in ccronexpr recipe |
3 | webconfig-framework | meta-cmf-raspberrypi | error: format '%u' expects argument of type 'unsigned int', but argument 7 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
4 | telemetry | meta-cmf-raspberrypi | error: format '%d' expects argument of type 'int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=] | 142 | T2Debug("TR-181 Param count : %d\n", paramList->count); | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~ | | | | | size_t {aka long unsigned int} | ../../../../../../../../../rdk/components/generic/telemetry/source/utils/t2log_wrapper.h:36:61: note: in definition of macro 'T2Debug' | 36 | #define T2Debug(...) T2Log(RDK_LOG_DEBUG, __VA_ARGS__) ^~~~~~~~~~~ | ../../../../../../../../../rdk/components/generic/telemetry/source/ccspinterface/rbusInterface.c:142:36: note: format string is defined here | 142 | T2Debug("TR-181 Param count : %d\n", paramList->count); cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
5 | jst | meta-cmf-raspberrypi | | ~/ld: CMakeFiles/jst.dir/source/jst_cosa.c.o: undefined reference to symbol 'dbus_connection_send@@LIBDBUS_1_3' | ~/recipe-sysroot/usr/lib/libdbus-1.so: error adding symbols: DSO missing from command line | collect2: error: ld returned 1 exit status | ninja: build stopped: subcommand failed. | WARNING: exit code 1 from a shell command. | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
6 | ccsp-lm-lite | meta-cmf-raspberrypi | error: format '%d' expects argument of type 'int', but argument 4 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=] 147 | CcspLMLiteConsoleTrace(("RDK_LOG_DEBUG, wrp_msg->u.event.payload_size :%d\n",wrp_msg→u.event.paylo cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
7 | ccsp-misc | meta-cmf-raspberrypi | error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
8 | ccsp-misc | meta-cmf-raspberrypi | /usr/lib/libhal_platform.so: undefined reference to `Utopia_SetEvent' collect2: error: ld returned 1 exit status Makefile:403: recipe for target 'LTime' failed make[3]: *** [LTime] ErrorA 1 | Added LDFLAGS_append_aarch64 = " -lutctx" in misc recipe |
9 | ccsp-hotspot | meta-cmf-raspberrypi | error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
10 | rdk-vlanmanager | meta-cmf-raspberrypi | /usr/lib/libhal_platform.so: undefined reference to `Utopia_RawGet' /usr/lib/libhal_platform.so: undefined reference to `Utopia_SetEvent' /usr/lib/libhal_platform.so: undefined reference to `Utopia_Free' /usr/lib/libhal_platform.so: undefined reference to `Utopia_Init' /usr/lib/libhal_platform.so: undefined reference to `Utopia_RawSet' | Added LDFLAGS_aarch64 += " -lutctx -lprivilege " in recipe |
11 | ccsp-dmcli | meta-cmf-raspberrypi | error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
12 | harvester | meta-cmf-raspberrypi | error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'int64_t' {aka 'long int'} [-Werror=format=] error: format '%d' expects argument of type 'int', but argument 4 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=] /harvester_radio_traffic_avropack.c:512:34: error: format '%lld' expects argument of type 'long long int', but argument 4 has type 'int64_t' {aka 'long int'} [-Werror=format=] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
13 | ccsp-xdns | meta-cmf-raspberrypi | cosa_xdns_apis.c:393:35: error: format '%d' expects argument of type 'int', but argument 5 has type 'ssize_t' {aka 'long int'} [-Werror=format=] cosa_xdns_webconfig_api.c:693:51: error: format '%d' expects argument of type 'int', but argument 3 has type 'size_t' {aka 'long unsigned int'} [-Werror=format=] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
14 | ccsp-tr069-pa | meta-cmf-raspberrypi | /ccsp_cwmp_tcpcrho_auth.c:1993:13: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] ssp_debug.c:993:21: error: conversion from 'long unsigned int' to 'unsigned int' changes value from '18446744073709551615' to '4294967295' [-Werror=overflow] ccsp_management_server.c:885:37: error: cast from pointer to integer of different size [-Werror=pointer-to-int-cast] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary. |
15 | rdk-vlanmanager | meta-cmf-raspberrypi | undefined reference to `drop_root_caps' undefined reference to `read_capablitiy' undefined reference to `update_process_caps' | Added LDFLAGS_aarch64 += " -lutctx -lprivilege " in recipe |
16 | ccsp-snmp-pa | meta-cmf-raspberrypi | cosa_api.c:360:12: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] cc1: all warnings being treated as errors | Using CFLAGS_remove += " -Werror" to fix these errors temporary |
17 | zilker-sdk | meta-cmf-broadband | WARNING: zilker-sdk-git-r0 do_populate_sysroot: File '/usr/lib/libccronexpr.so.0' from zilker-sdk was already stripped, this will prevent future debugging! WARNING: zilker-sdk-git-r0 do_populate_sysroot: File '/usr/lib/libccronexpr.so.0.0.0' from zilker-sdk was already stripped, this will prevent future debugging! WARNING: zilker-sdk-git-r0 do_populate_sysroot: File '/usr/lib/libccronexpr.so' from zilker-sdk was already stripped, this will prevent future debugging! WARNING: zilker-sdk-git-r0 do_package: QA Issue: File '/usr/lib/libccronexpr.so' from zilker-sdk was already stripped, this will prevent future debugging! [already-stripped] WARNING: zilker-sdk-git-r0 do_package: QA Issue: File '/usr/lib/libccronexpr.so.0' from zilker-sdk was already stripped, this will prevent future debugging! [already-stripped] WARNING: zilker-sdk-git-r0 do_package: QA Issue: File '/usr/lib/libccronexpr.so.0.0.0' from zilker-sdk was already stripped, this will prevent future debugging! [already-stripped] | Added INSANE_SKIP_${PN} = "ldflags already-stripped" in zilker-sdk recipe |
18 | zilker-sdk | meta-cmf-broadband | File /usr/lib/libccronexpr.so.0.0.0 in package zilker-sdk doesn't have GNU_HASH (didn't pass LDFLAGS?) File /usr/lib/libccronexpr.so.0 in package zilker-sdk doesn't have GNU_HASH (didn't pass LDFLAGS?) [ldflags] | Added INSANE_SKIP_${PN} = "ldflags" in ccronexpr recipe |
19 | utopia | meta-cmf-raspberrypi | CR crashing is happening on 64bit aarch when dbus enabled | Enabled rbus support |
20 | pam | CcspPandM | ccsp-p-and-m is crashing on 64bit aarch when rbus is enabling | pam is passing wrong dm parameter to ethagent due to that pam crash is happened. |
Known Issues
1 Comment
Unknown User (weilun.liu)
hello, Keerthana
thanks for your information,
Here is Weilun,
we are trying to build up RDKB 64Bit with our platform,
we encounter many package 64bit compatible issues.
ex. some modules makefile/script only support 32bit path, so there have comiple error/runtime error because dependency modules can not reference to the lib
ex. avro/avro-c_1.8.1
LIBRARY DESTINATION lib → should correct to LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} for 64bit
Starting Utopia service...
[ 10.031495] sh[3626]: /bin/sh: /lib/rdk/if_check.sh: No such file or directory
would you share what's this RPI 64bit project base on RDKB version (2021q3_dunfell or 2021q4_dunfell)
and how to solve those rdkb package 64bit compatible errors,
or would you share RPI 64bit recipes-ccsp for reference
Appreciate your time and help, thank you!