Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Info

This Page is under Development

Introduction

Briefly describe in general terms the system/application and the purpose for which it is intended, written in non-technical terminology. Consider including a high-level architecture diagram for the system. The description should include, but is not limited to, the following:

  • Key features or major functions/use cases performed by the system/application
  • Architecture of the system in non-technical terms (e.g., client server, Web-based, etc.)
  • System environment or special conditions


Raspberry Pi: The Raspberry Pi 3 Model B+ featuring a 64-bit quad core processor running at 1.4 Ghz. R-Pi3 B+ supports the dual band 2.4GHz and 5GHz IEEE 802.11.b/g/n/ac wireless LAN which provides an high edge for the broadband developer community to test the RDK-B stack with Router, WiFi functionalities. 

Environment Setup for Emulator and Raspberry Pi

...

$ repo sync -j4 --no-clone-bundle ( common for both Emulator and Raspberry Pi )

Building


Note
  • Cloning the code before login once to code.rdkcentral.com, user would get the Authentication error, even though the account is in good standing and has all the required access.
  • Please login to code.rdkcentral.com before attempting to clone.


Building

For Emulator:

$ source meta-cmf-bsp-emulator/setup-environment

...

$ source meta-cmf-raspberrypi/setup-environment (Select option raspberrypi-rdk-broadband.conf).


Next, you would need to initiate the build using the following command:

...

-             ${HOME}/RaspberryPi/build-raspberrypi-rdk-broadband/tmp/deploy/images/raspberrypi-rdk-broadband/rdkrdkb-generic-broadband-image-raspberrypi-rdk-broadband.rpi-sdimg


Example:

.../build-raspberrypi-rdk-broadband/tmp/deploy/images/raspberrypi-rdk-broadband/rdkb-generic-broadband-image_default_20200206062343.rootfs.rpi-sdimg

Troubleshooting

Error Messages during bitbake for Emulator and solutions.

Error 1

| /homeusr/amrita/Desktop/EmuFeb3/build-qemux86broadband/tmp/work/x86include/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c:40:12: error: static declaration of ‘memfdcreate’ follows non-static declaration | static int memfdcreate(const char name, unsigned int flags) | ^~~~~~~~~~~~ | In file included from /usr/include/x8664-linux-gnu/bits/mman-linux.h:115:0, | from /usr/include/x8664-linux-gnu/bits/mman.h:45, | from /usr/include/x8664-linux-gnu/sys/mman.h:41, | from gnu/bits/mman-shared.h:46:5: note: previous declaration of ‘memfd_create’ was here
| int memfd_create (const char *__name, unsigned int __flags) __THROW;
| ^~~~~~~~~~~~
| /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/rules.mak:59: recipe for target 'util/memfd.o' failed
| make: *** [util/memfd.o] Error 1
| make: *** Waiting for unfinished jobs....
| /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/include/sysemu/os-posix.h:29, | from util/path.c: In function ‘follow_path’:
| /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/includeutil/qemu/osdep.h:104, | from /home/amrita/Desktop/Emupath.c:126:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
| if (!cursor->populated_entries)
| ^~
| /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfdpath.c:28: | /usr/include/x8664-linux-gnu/bits/mman-shared.h:46:5: note: previous declaration of ‘memfdcreate’ was here | int memfdcreate (const char name, unsigned int flags) 128:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
| cursor = *source;
| ^~~~~~
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/rules.mak:59: recipe for target 'util/memfd.o' failed | make: [util/memfd.o] Error 1 | make: Waiting for unfinished jobs.... | temp/log.do_compile.9718)
ERROR: Task (virtual:native:/home/amrita/Desktop/Emu_Feb3/buildopenembedded-qemux86broadbandcore/tmp/work/x8664-linuxmeta/recipes-devtools/qemu-native/qemu_2.7.0-r1/qemu-2.7.0/util/path.c: In function ‘followpath’: | /home/amrita/Desktop/Emu.bb:do_compile) failed with exit code '1'

Solution:

Remove static keyword in function int memfdcreate in file /Feb3/build-qemux86broadband/tmp/work/x8664-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/pathmemfd.c

Pictorial representation of changes in memfd.c file:

draw.io Diagram
diagramNameERR1_Emu.drawio
size1200
revision1
         

Patch file for changes in memfd.c attached below:

memfd.patch

Path for changes in memfd.c file:

draw.io Diagram
bordertrue
diagramNamememfd.c pictorial representation
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth121
revision1


Error 2

| /usr/include/gconv.h:26:36: fatal error: bits/types/__mbstate_t.h: No such file or directory
| #include <bits/types/__mbstate_t.h>
| ^
| compilation terminated.
| src/CMakeFiles/ucresolv.dir/build.make:89: recipe for target 'src/CMakeFiles/ucresolv.dir/res_query.c.o' failed
| make[2]: *** [src/CMakeFiles/ucresolv.dir/res_query.c.o] Error 1
| make[2]: Leaving directory '/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/i586-rdk-linux/ucresolv/git+AUTOINC+996c3778b1-r1/build'
| CMakeFiles/Makefile2:127: recipe for target 'src/CMakeFiles/ucresolv.dir/all' failed
| make[1]: *** [src/CMakeFiles/ucresolv.dir/all] Error 2
| make[1]: Leaving directory ':126:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation] | if (!cursor-&gtpopulatedentries) | ^~ | /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x8664i586-rdk-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/path.c:128:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’ | cursor = *source; | ^~~~~~ ucresolv/git+AUTOINC+996c3778b1-r1/build'
| Makefile:132: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: exit code 1 2 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x8664i586-rdk-linux/qemu-native/2.7.0ucresolv/git+AUTOINC+996c3778b1-r1/temp/log.do_compile.971829460)
ERROR: Task (virtual:native:/home/amrita/Desktop/Emu_Feb3/openembeddedmeta-rdk-coreext/meta/recipes-devtoolssupport/qemu/qemu2.7.ucresolv/ucresolv_1.0.bb:do_compile) failed with exit code '1'

Solution:Remove static keyword in function int memfdcreate in file /x8664-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c

Copy   __mbstate_t.h  file from build-qemux86broadband/tmp/work/i586-rdk-linux/ucresolv/git+AUTOINC+996c3778b1-r1/git/include/wcsmbs/bits/types and put it in build-qemux86broadband/tmp/sysroots/qemux86broadband/usr/include/bits/types

Pictorial representation of changes in ucresolv_1.0.bb file:

draw.io Diagram
diagramNameERR2_Emu.drawio
size1200
revision1


Patch file for changes in memfd.c ucresolv_1.0.bb attached below:

memfducresolv_1.0.patch

Pictorial representation of Path for changes in memfd.c file:

Error 2

...

ucresolv_1.0.bb file:

draw.io Diagram
bordertrue
diagramName__mbstate_t.h
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth426
revision1


Error 3

In file included from ../../git/debugfs/../misc/create_inode.c:19:0:
| /usr/include/unistd.h:1110:9: note: previous declaration of ‘copy_file_range’ was here
| ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
| ^~~~~~~~~~~~~~~
| Makefile:412: recipe for target 'create_inode.o' failed
| make[2]: *** [create_inode.o] Error 1
| make[2]: *** Waiting for unfinished jobs....

...


| gcc -c -I. -I../lib -I../../git/lib -isystem/home/amrita/Desktop/Emu_Feb3/build-

...

qemux86broadband/tmp/sysroots/x86_64-linux/usr/include -isystem/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/sysroots/

...

x86_64-linux/usr/include

...

-O2 -pipe -DHAVE_CONFIG_H -I../../git/debugfs/../e2fsck -DDEBUGFS ../../git/debugfs/xattrs.c -o xattrs.o
| make[2]: Leaving directory '/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/

...

work/x86_64-linux/e2fsprogs-native/1.43-r1/build/debugfs'
| Makefile:399: recipe for target 'all-progs-recursive' failed
| make[1]: *** [all-progs-recursive] Error 1
| make[1]: Leaving directory '/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/

...

x86_64-

...

linux/

...

e2fsprogs-native/1.43-r1/build'
| Makefile:334: recipe for target 'all' failed
| make: *** [all] Error 2
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/

...

x86_64-linux/

...

e2fsprogs-native/1.43-r1/

...

temp/log.do_compile.21571)
ERROR: Task (virtual:native:/home/amrita/Desktop/Emu_Feb3/openembedded-core/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb:do_compile) failed with exit code '1'

Solution:

Change copy_file_range to copy_file_chunk in x86_64-linux/e2fsprogs-native/1.43-r1/git/misc/create_inode.c

Pictorial representation of changes in create_inode.c file:

draw.io Diagram
diagramNameERR3_Emu.drawio
size1200
revision1

Patch file for changes in create_inode.c attached below:

create_inode.patch

Path for changes in create_inode.c file:

draw.io Diagram
bordertrue
diagramNameCreate_inode.c
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth121
revision1


Error Messages during bitbake for Raspberry Pi and solutions.

Error 1

/home/amrita/Desktop/

...

Rpi_Jan31/build-raspberrypi-rdk-

...

broadband/tmp/work/

...

x86_64-

...

linux/

...

Solution:

Copy   __mbstate_t.h  file from build-qemux86broadband/tmp/work/i586-rdk-linux/ucresolv/git+AUTOINC+996c3778b1-r1/git/include/wcsmbs/bits/types and put it in build-qemux86broadband/tmp/sysroots/qemux86broadband/usr/include/bits/types

Patch file for changes in ucresolv_1.0.bb attached below:

ucresolv_1.0.patch

Pictorial representation of changes in ucresolv_1.0.bb file:

Error 3

In file included from ../../git/debugfs/../misc/create_inode.c:19:0:
| /usr/include/unistd.h:1110:9: note: previous declaration of ‘copy_file_range’ was here
| ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
| ^~~~~~~~~~~~~~~
| Makefile:412: recipe for target 'create_inode.o' failed
| make[2]: *** [create_inodeqemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c:40:12: error: static declaration of ‘memfd_create’ follows non-static declaration
| static int memfd_create(const char *name, unsigned int flags)
| ^~~~~~~~~~~~
| In file included from /usr/include/x86_64-linux-gnu/bits/mman-linux.h:115:0,
| from /usr/include/x86_64-linux-gnu/bits/mman.h:45,
| from /usr/include/x86_64-linux-gnu/sys/mman.h:41,
| from /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/include/sysemu/os-posix.h:29,
| from /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/include/qemu/osdep.h:104,
| from /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c:28:
| /usr/include/x86_64-linux-gnu/bits/mman-shared.h:46:5: note: previous declaration of ‘memfd_create’ was here
| int memfd_create (const char *__name, unsigned int __flags) __THROW;
| ^~~~~~~~~~~~
| /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/rules.mak:59: recipe for target 'util/memfd.o' failed
| make: *** [util/memfd.o] Error 1
| make[2]: *** Waiting for unfinished jobs....
| gcc -c -I. -I../lib -I../../git/lib -isystem/: *** Waiting for unfinished jobs....
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/EmuRpi_Feb3Jan31/build-raspberrypi-rdk-qemux86broadbandbroadband/tmp/sysrootswork/x86_64-linux/usr/include -isystem/qemu-native/2.7.0-r1/temp/log.do_compile.19600)
ERROR: Task (virtual:native:/home/amrita/Desktop/EmuRpi_Feb3Jan31/buildopenembedded-qemux86broadbandcore/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe -DHAVE_CONFIG_H -I../../git/debugfs/../e2fsck -DDEBUGFS ../../git/debugfs/xattrs.c -o xattrs.o
| make[2]: Leaving directory '/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/build/debugfs'
| Makefile:399: recipe for target 'all-progs-recursive' failed
| make[1]: *** [all-progs-recursive] Error 1
| make[1]: Leaving directory '/home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/build'
| Makefile:334: recipe for target 'all' failed
| make: *** [all] Error 2
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/Emu_Feb3/build-qemux86broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/temp/log.do_compile.21571)
ERROR: Task (virtual:native:/home/amrita/Desktop/Emu_Feb3/openembedded-core/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb:do_compile) failed with exit code '1'

Solution:

Change copy_file_range to copy_file_chunk in x86_64-linux/e2fsprogs-native/1.43-r1/git/misc/create_inode.c

Patch file for changes in create_inode.c attached below:

create_inode.patch

Pictorial representation of changes in create_inode.c file:

Error Messages during bitbake for Raspberry Pi and solutions.

Error 1

meta/recipes-devtools/qemu/qemu_2.7.0.bb:do_compile) failed with exit code '1'

Solution:

Removed static keyword in function int memfd_create in file /x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c

Pictorial representation of changes in memfd.c file:

draw.io Diagram
diagramNameERR1_Emu.drawio
size1200
revision1

Patch file for changes in memfd.c attached below:

memfd.patch

Path for changes in memfd.c file:

draw.io Diagram
bordertrue
diagramName__mbstate_t.h Rpi
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth121
revision1


Error 2

/usr/include/gconv.h:26:36: fatal error: bits/types/__mbstate_t.h: No such file or directory
| #include <bits/types/__mbstate_t.h>
| ^
| compilation terminated.
| src/CMakeFiles/ucresolv.shared.dir/build.make:137: recipe for target 'src/CMakeFiles/ucresolv.shared.dir/res_send.c.o' failed
| make[2]: *** [src/CMakeFiles/ucresolv.shared.dir/res_send.c.o] Error 1
| make[2]: Leaving directory '/home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/ucresolv/git+AUTOINC+996c3778b1-r1/build'
| CMakeFiles/Makefile2:90: recipe for target 'src/CMakeFiles/ucresolv.shared.dir/all' failed
| make[1]: *** [src/CMakeFiles/ucresolv.shared.dir/all] Error 2
| make[1]: Leaving directory '/home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/ucresolv/git+AUTOINC+996c3778b1-r1/build'
| Makefile:132: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: exit code 2 from a shell command.
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c:40:12: error: static declaration of ‘memfd_create’ follows non-static declaration
| static int memfd_create(const char *name, unsigned int flags)
| ^~~~~~~~~~~~
| In file included from /usr/include/x86_64-linux-gnu/bits/mman-linux.h:115:0,
| from /usr/include/x86_64-linux-gnu/bits/mman.h:45,
| from /usr/include/x86_64-linux-gnu/sys/mman.h:41,
| from /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64cortexa7t2hf-neon-vfpv4-rdk-linux/qemu-native/2.7.0-r1/qemu-2.7.0/include/sysemu/os-posix.h:29,
| from gnueabi/ucresolv/git+AUTOINC+996c3778b1-r1/temp/log.do_compile.6585)
ERROR: Task (/home/amrita/Desktop/Rpi_Jan31/buildmeta-raspberrypi-rdk-broadbandext/tmprecipes-support/workucresolv/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/include/qemu/osdep.h:104,
| from /home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c:28:
| /usr/include/x86_64-linux-gnu/bits/mman-shared.h:46:5: note: previous declaration of ‘memfd_create’ was here
| int memfd_create (const char *__name, unsigned int __flags) __THROW;
| ^~~~~~~~~~~~
| /home/amrita/Desktop/Rpi_Jan31/build-ucresolv_1.0.bb:do_compile) failed with exit code '1'

Solution:

Copy  __mbstate_t.h file from cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/ucresolv/git+AUTOINC+b58d49e165-r1/git/include/wcsmbs/bits/types and put it in build-raspberrypi-rdk-broadband/tmp/sysroots/raspberrypi-rdk-broadband/

...

usr/

...

include/bits/types/

Patch file for changes in ucresolv_1.0.bb attached below:

draw.io Diagram
diagramNameERR2_Emu.drawio
size1200
revision1

ucresolv_1.0.patch

Path for changes in ucresolv_1.0.bb file:

draw.io Diagram
bordertrue
diagramNameUcresolve
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth401
revision1



Error 3

In file included from ../../git/debugfs/../misc/create_inode.c:19:0:
| /usr/include/unistd.h:1110:9: note: previous declaration of ‘copy_file_range’ was here
| ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
| ^~~~~~~~~~~~~~~
| Makefile:412: recipe for target 'create_inode.o' failed
| make[2]: *** [create_inode.o] Error 1
| make[2]: *** Waiting for unfinished jobs....
| make[2]: Leaving directory '/home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/build/debugfs'
| Makefile:399: recipe for target 'all-progs-recursive' failed
| make[1]: *** [all-progs-recursive] Error 1
| make[1]: Leaving directory '/home/amrita/Desktop/Rpi_Jan31/build-raspberrypi-rdk-broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/build'
| Makefile:334: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: exit code 1 from a shell command.
| ERROR: Function failed: do_compile (log file is located at

Solution:

Removed static keyword in function int memfd_create in file /x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/memfd.c

Patch file for changes in memfd.c attached below:

memfd.patch

Pictorial representation of changes in memfd.c file:

Error 2

...

/home/amrita/Desktop/Rpi_Jan31/build-raspberrypi

...

-rdk-

...

broadband/tmp/work/x86_64-linux/e2fsprogs-native/1.43-r1/temp/log.do_compile.11514)
ERROR: Task (virtual:native:/home/amrita/Desktop/Rpi_Jan31/

...

openembedded-core/meta/recipes-devtools/e2fsprogs/e2fsprogs_1.43.bb:do_compile) failed with exit code '1'

Solution:

Change copy_file_range to copy_file_chunk in x86_64-linux/e2fsprogs-native/1.43-r1/git/misc/create_inode.c

Pictorial representation of changes in create_inode.c file:

draw.io Diagram
diagramNameERR3_Emu.drawio
size1200
revision1

Patch file for changes in create_inode.c attached below:

create_inode.patch

Path for changes in create_inode.c file:

draw.io Diagram
bordertrue
diagramNameCreate_inode.c
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth121
revision1

Special Considerations

Error

...

/home/amrita/Desktop/

...

Emu_

...

Feb3/build-raspberrypi3-

...

64-rdk-broadband/tmp/work/

...

Solution:

Copy  __mbstate_t.h file from cortexa7t2hf-neon-vfpv4-rdk-linux-gnueabi/ucresolv/git+AUTOINC+b58d49e165-r1/git/include/wcsmbs/bits/types and put it in build-raspberrypix86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/rules.mak:59: recipe for target 'util/memfd.o' failed
| make: *** [util/memfd.o] Error 1
| make: *** Waiting for unfinished jobs....
| /home/amrita/Desktop/Emu_Feb3/build-raspberrypi3-64-rdk-broadband/tmp/sysrootswork/raspberrypi-rdk-broadband/usr/include/bits/types/

Patch file for changes in ucresolv_1.0.bb attached below:

ucresolv_1.0.patch

Pictorial representation of changes in ucresolv_1.0.bb file:

Error 3

In file included from ../../git/debugfs/../misc/create_inode.c:19:0:
| /usr/include/unistd.h:1110:9: note: previous declaration of ‘copy_file_range’ was here
| ssize_t copy_file_range (int __infd, __off64_t *__pinoff,
| ^~~~~~~~~~~~~~~
| Makefile:412: recipe for target 'create_inode.o' failed
| make[2]: *** [create_inode.o] Error 1
| make[2]: *** Waiting for unfinished jobs....
| make[2]: Leaving directory 'x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/path.c: In function ‘follow_path’:
| /home/amrita/Desktop/Emu_Feb3/build-raspberrypi3-64-rdk-broadband/tmp/work/x86_64-linux/qemu-native/2.7.0-r1/qemu-2.7.0/util/path.c:126:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
| if (!cursor->populated_entries)
| ^~
| /home/amrita/Desktop/RpiEmu_Jan31Feb3/build-raspberrypi3-raspberrypi64-rdk-broadband/tmp/work/x86_64-linux/e2fsprogsqemu-native/12.7.430-r1/build/debugfs'
| Makefile:399: recipe for target 'all-progs-recursive' failed
| make[1]: *** [all-progs-recursive] Error 1
| make[1]: Leaving directory '/qemu-2.7.0/util/path.c:128:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
| cursor = *source;
| ^~~~~~
| WARNING: /home/amrita/Desktop/RpiEmu_Jan31Feb3/build-raspberrypiraspberrypi3-64-rdk-broadband/tmp/work/x86_64-linux/e2fsprogsqemu-native/12.7.430-r1/build'
| Makefile:334: recipe for target 'all' failed
| make: *** [all] Error 2
| WARNING: exit code 1 from a shell command.temp/run.do_compile.8435:1 exit 1 from 'exit 1'
| ERROR: Function failed: do_compile (log file is located at /home/amrita/Desktop/RpiEmu_Jan31Feb3/build-raspberrypi3-raspberrypi64-rdk-broadband/tmp/work/x86_64-linux/e2fsprogsqemu-native/12.7.430-r1/temp/log.do_compile.115148435)
ERROR: Task (virtual:native:/home/amrita/Desktop/RpiEmu_Jan31Feb3/openembedded-core/meta/recipes-devtools/e2fsprogsqemu/e2fsprogsqemu_12.7.430.bb:do_compile) failed with exit code '1'

Solution:

Change copy_file_range to copy_file_chunk in Removed   1. #ifdef CONFIG_MEMFD    2. #include <sys/memfd.h>    3. #elif defined CONFIG_LINUX  and added  1.#include <sys/mman.h>    2.#if defined CONFIG_LINUX && !defined CONFIG_MEMFD in    /x86_64-linux/e2fsprogsqemu-native/12.7.430-r1/git/misc/create_inode.cqemu-2.7.0/util/memfd.c

Pictorial representation of changes in memfd.c file:

draw.io Diagram
diagramNameERR4.drawio
size1200
revision1

Patch file for changes in create_inodememfd.c attached below:

create_inodememfd.patch

Pictorial representation of Path for changes in create_inodememfd.c file:

  • Special Considerations

...

draw.io Diagram
bordertrue
diagramNameMem
simpleViewerfalse
linksauto
tbstyletop
lboxtrue
diagramWidth241
revision1


Support

Contact

Organization

Phone

Email

Role

Rajkumar Narayanan

L&T Technology Services

Nill

rajkumar.narayanan@ltts.com

Program Manager

<Contact Name>

<Organization>

<Phone>

<Email>

<Role>