Hi, The unpack=0 line needs to be for all targz files that you want to have in the target machine. And if still is failing you should check the WORKDIR directory to see exactly what is arriving to that folder and see what is failing from your setup.
If you don't have the files in the WORKDIR, you will never be able to copy into the target as you seems to be wanting # Get the WORKDIR of the recipe to know exactly what is there bitbake -e <name_recipe> | grep ^WORKDIR= | sed -n -e 's/^.*WORKDIR="//p' | sed -n -e 's/".*$//p' Jairo R. Mejia Aponte | Embedded Software Linux Junior Engineer Netmodule | Hirschmann Automation & Control GmbH Location Eschborn | Frankfurter Str. 10-14 | 65760 Eschborn | Germany jairo.mejiaapo...@belden.com<mailto:jairo.mejiaapo...@belden.com> | www.netmodule.com<http://www.netmodule.com/> | www.belden.com<http://www.belden.com/> ________________________________ From: yocto@lists.yoctoproject.org <yocto@lists.yoctoproject.org> on behalf of umeshyv <umes...@gmail.com> Sent: 24 October 2024 4:23 PM To: yocto@lists.yoctoproject.org <yocto@lists.yoctoproject.org> Subject: [EXTERNAL] Re: [yocto] populate_sysroot not found in x86_64 x86_64_ubuntu-20.04 #yocto External Message:Use caution before opening links or attachments Hi Jairo As you suggested SUMMARY = "Tools" LICENSE = "CLOSED" #SAVEDDIR := "${THISDIR}/files" FILESPATH := "${THISDIR}/files:" (Added) SRC_URI = "file://1xx.tgz \ file://2xx.tgz \ file://3xx.tgz \ file://4xx.tgz;unpack=0 " do_install() { install -d ${D}/opt/tools #install -m 0755 ${SAVEDDIR}/*.tgz ${D}/opt/tools install -m 0755 ${WORKDIR}/*.tgz ${D}/opt/tools } FILES_${PN} += "/opt/tools/*" I get error ERROR: lib32-xxx-xxx-xxx-image-1.0-r0 do_rootfs: Manifest /home/xxx/projects/xxx/build-xxx/tmp/sstate-control/manifest-x86_64_ubuntu-20.04-tools-native.package_write_ipk not found in x86_64 x86_64_ubuntu-20.04 (variant '')? Still anything missed ? Please suggest Thanks umesh On Thu, 24 Oct 2024 at 09:59, Jairo Mejia Aponte <jairo.mejiaapo...@belden.com<mailto:jairo.mejiaapo...@belden.com>> wrote: Hi, When you are using yocto, by default unpack the compress files that you put in SRC_URI. Therefore, you will not find the .tgz in the working directory. In order to avoid that you need to specify that in the recipe. See: https://docs.yoctoproject.org/dev-manual/new-recipe.html?highlight=unpack#fetching-code<https://urldefense.com/v3/__https://docs.yoctoproject.org/dev-manual/new-recipe.html?highlight=unpack*fetching-code__;Iw!!Fpyg6SJIkmElPg!wFdm_AmT888sHjf46tyLuvf3gPUnveKzZZBlvOlujRs4U7X3mN1I7cxgTS2VuSXSPR3RBoewiPa4DkON4OCOzQ$> Files mentioned in SRC_URI whose names end in a typical archive extension (e.g. .tar, .tar.gz, .tar.bz2, .zip, and so forth), are automatically extracted during the do_unpack task. For another example that specifies these types of files, see the “Building an Autotooled Package” section. In order to avoid this, you can add to the file:// line the flag ";unpack=0". You can see this kind of behaviors if you search directly in the folder of the recipe what happen after you try to bake it. # Just build again bitbake <name_recipe> .... Error # Get the WORKDIR of the recipe to know exactly what is there bitbake -e <name_recipe> | grep ^WORKDIR= | sed -n -e 's/^.*WORKDIR="//p' | sed -n -e 's/".*$//p' Sincerely, Jairo R. Mejia Aponte | Embedded Software Linux Junior Engineer Netmodule | Hirschmann Automation & Control GmbH Location Eschborn | Frankfurter Str. 10-14 | 65760 Eschborn | Germany jairo.mejiaapo...@belden.com<mailto:jairo.mejiaapo...@belden.com> | www.netmodule.com<https://urldefense.com/v3/__http://www.netmodule.com/__;!!Fpyg6SJIkmElPg!wFdm_AmT888sHjf46tyLuvf3gPUnveKzZZBlvOlujRs4U7X3mN1I7cxgTS2VuSXSPR3RBoewiPa4DkN8F-6eYA$> | www.belden.com<http://www.belden.com/> ________________________________ From: yocto@lists.yoctoproject.org<mailto:yocto@lists.yoctoproject.org> <yocto@lists.yoctoproject.org<mailto:yocto@lists.yoctoproject.org>> on behalf of umeshyv <umes...@gmail.com<mailto:umes...@gmail.com>> Sent: 24 October 2024 7:31 AM To: yocto@lists.yoctoproject.org<mailto:yocto@lists.yoctoproject.org> <yocto@lists.yoctoproject.org<mailto:yocto@lists.yoctoproject.org>> Subject: [EXTERNAL] Re: [yocto] populate_sysroot not found in x86_64 x86_64_ubuntu-20.04 #yocto External Message: Use caution before opening links or attachments Hi Aleksandar Thanks for your reply I removed SAVEDDIR in the recipe and replaced with WORKDIR inside do_install() and when I build, following is the error ERROR: xxx-tools-native-1.0-r0 do_install: ExecutionError('/home/xxx/xxx/xxx/build-xxx/tmp/work/xxx-linux/tools-native/1.0-r0/temp/run.do_install.3249', 1, None, None) In the log file DEBUG: Python function extend_recipe_sysroot finished | DEBUG: Executing shell function do_install | install: cannot stat '/home/xxx/xxx/xxx/build-xxx/tmp/work/xxx-linux/tools-native/1.0-r0/*.tgz': No such file or directory Am I still missing anything, suggestions please Thanks umesh On Thu, 24 Oct 2024 at 06:02, Aleksandar Nikolic via Lists.Yoctoproject.Org<https://urldefense.com/v3/__http://Lists.Yoctoproject.Org__;!!Fpyg6SJIkmElPg!39plYaiSOTIy8bd-QKJFH50DgNpadfVTOCd8y38Y37NIU4K6jlNMu_PhINYt1iaS8sAywN5qTCotee5O_MW0cA$> <aleksandar.nikolic010=gmail....@lists.yoctoproject.org<mailto:gmail....@lists.yoctoproject.org>> wrote: On Wed, Oct 23, 2024 at 12:39 PM, umeshyv wrote: Hi I get below error for the recipe which copies .tgz files to a directory ERROR: lib32-xxxxxx-image-1.0-r0 do_prepare_recipe_sysroot: Manifest /home/x/projects/x/build-x/tmp/sstate-control/manifest-x86_64_ubuntu-20.04-sigma-tools-native.populate_sysroot not found in x86_64 x86_64_ubuntu-20.04 (variant '')? Here is my recipe SUMMARY = "Tools" LICENSE = "CLOSED" SAVEDDIR := "${THISDIR}/files" SRC_URI = "file://1xx.tgz \ file://2xx.tgz \ file://3xx.tgz \ file://4xx.tgz" do_install() { install -d ${D}/opt/tools install -m 0755 ${SAVEDDIR}/*.tgz ${D}/opt/tools } FILES_${PN} += "/opt/tools/*" Looking for suggestions for this error. I did trails writing do_prepare_recipe_sysroot() {} but I get same error. Please help me on this regard. Thanks umesh You are not supposed to copy those files directly from the files directory, as Yocto will automatically copy them to your WORKDIR with the do_fetch() task. Instead try to install them from the WORKDIR directory and remove this SAVEDIR variable, you don't really need that. Aleksandar ________________________________ DISCLAIMER: Privileged and/or Confidential information may be contained in this message. If you are not the addressee of this message, you may not copy, use or deliver this message to anyone. In such event, you should destroy the message and kindly notify the sender by reply e-mail. It is understood that opinions or conclusions that do not relate to the official business of the company are neither given nor endorsed by the company. Thank You. ********************************************************************** DISCLAIMER: Privileged and/or Confidential information may be contained in this message. If you are not the addressee of this message, you may not copy, use or deliver this message to anyone. In such event, you should destroy the message and kindly notify the sender by reply e-mail. It is understood that opinions or conclusions that do not relate to the official business of the company are neither given nor endorsed by the company. Thank You.
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#64112): https://lists.yoctoproject.org/g/yocto/message/64112 Mute This Topic: https://lists.yoctoproject.org/mt/109168052/21656 Mute #yocto:https://lists.yoctoproject.org/g/yocto/mutehashtag/yocto Group Owner: yocto+ow...@lists.yoctoproject.org Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-