How to install recursively my directories and files in BitBake recipe
Asked Answered
P

2

7

I would like to install/copy all my directories and files recursively from working directory to my target package rootfs on yocto build system. I tried the solution provided by Tobias Bystricky in

How to install directory structure recursively in OpenEmbedded BitBake recipe?

but I faced "No such file or directory" error

I did ,

install -d ${D}${sysconfdir}/xxx/
install -d ${D}${sysconfdir}/xxx/yyy
install -d ${D}${sysconfdir}/xxx/yyy/zzz
install -d ${D}${sysconfdir}/xxx/yyy/zzz/kkk
find ${WORKDIR}/xxx/yyy/zzz/kkk/ -type f -exec 'install -m 0755 "{}" ${D}${sysconfdir}/xxx/yyy/zzz/kkk/' \; 

Error message is ,

find: `install -m 0755 / "Path to working dir" /xxx/yyy/zzz/kkk/test_file.txt / "Path to all packages" / "MyPackage" /image/etc/xxx/yyy/zzz/kkk/': No such file or directory

I checked & confirmed that exact working directory path & Package directory paths are present. please let me know if i am missing any.

please suggest if any other way.

Paragon answered 11/10, 2016 at 14:51 Comment(0)
S
10
cp -r

is known to leak user information. In the OE repos, the canonical form is

cp -R --no-dereference --preserve=mode,links -v SOURCE DESTINATION

see also corresponding OE patch

Shuttering answered 2/11, 2017 at 20:49 Comment(0)
P
3

i also tried as below , did not work.

install -m 0755 ${WORKDIR}/xxx/yyy/zzz/kkk/* ${D}${sysconfdir}/xxx/yyy/zzz/kkk

and just tried simple cp -r in do_install(), it works

cp -r ${WORKDIR}/xxx/yyy/zzz ${D}${sysconfdir}/xxx/yyy
Paragon answered 12/10, 2016 at 9:18 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.