Re: [yocto] Issues with DEPENDS

Alexander Kanavin <[email protected]>
Newsgroups org.yoctoproject.lists.yocto
Message-ID <CANNYZj8Z-jTpat9=xcaGkU=KXfsZqHP5cfQoi3Mr+LLhDYyiXw@mail.gmail.com>
All of this should work, but it's possible there's a simple mistake
somewhere. You need to verify every step from installation to
population of the sysroot:

1. For recipe B, are the needed files present in ${WORKDIR}/image?
2. For recipe B, are the needed files present in ${WORKDIR}/sysroot-destdir ?

(you might have to go several levels below these for reasons too
arcane to explain)

Alex

On Thu, 23 Oct 2025 at 12:29, Jared Weyer via lists.yoctoproject.org
<[email protected]> wrote:
>
> Hi,
>
>
> Hoping to get some help with an issue I have been having with DEPENDS. I'm sure I am missing something obvious, but I can't seem to figure out what is going on. Essentially, I have two recipes, I will call them recipe A and recipe B; recipe A has a build time dependency on recipe B. To troubleshoot the issue, I've reduced recipe A and B to very contrived examples, but the issue still persists.
>
>
> Below is recipe B:
>
>
> SUMMARY = "TI ARM-CGT-CLANG compiler tools"
> HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm"
> LICENSE = "CLOSED"
>
> BBCLASSEXTEND = "native nativesdk"
>
> # I don't believe I need this... but just in case
> SYSROOT_DIRS_NATIVE += " \
>     /usr/share/ti \
>     /usr
> "
>
> FILES:${PN} += " \
>    /usr \
> "
>
> do_install() {
>
>     install -d ${D}/usr/share/ti
>
>     install -d ${D}/usr/
>
>     echo test > ${S}/test.txt
>     echo test2 > ${S}/test2.txt
>
>     install -m 0755 ${S}/test.txt ${D}/usr/share/ti
>     install -m 0755 ${S}/test2.txt ${D}/usr
>
> }
>
> INHIBIT_PACKAGE_STRIP = "1"
> INHIBIT_SYSROOT_STRIP = "1"
> INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
>
> Below is recipe A:
>
> SUMMARY = "TI MCU+ SDK for AM263Px"
> HOMEPAGE = "https://www.ti.com/tool/MCU-PLUS-SDK-AM263PX"
> LICENSE = "CLOSED"
>
> BBCLASSEXTEND = "nativesdk native"
>
> DEPENDS = " \
>     ti-cgt-armllvm-native \ ### RECIPE B ###
>     sysconfig-native \
> "
>
> FILES:${PN} += " \
>     /usr/share \
> "
>
> do_install() {
>     install -d ${D}/usr/share
>     cp -r ${STAGING_DIR_NATIVE}/. ${D}/usr/share
> }
>
> My understanding is that adding the DEPENDS = "ti-cgt-armllvm-native" should install all files installed by ti-cgt-armllvm (recipe B) into the STAGING_DIR_NATIVE directory of recipe A; however, this is not occurring as there is no 'recipe-sysroot-native/usr/test2.txt' or 'recipe-sysroot-native/usr/share/ti/test.txt' file in recipe A staging directory.
>
> The issue does seem to be with DEPENDS because recipe B does install the test files correctly when run independently. When looking into this further, I found that 'sysroot-components/x86_64/ti-cgt-armllvm-native' (recipe B sysroot components is empty):
>
> tmp-aec/sysroots-components/x86_64/ti-cgt-armllvm-native/
> └── sysroot-providers
>     └── ti-cgt-armllvm-native
>
>
> My understanding is that this directory should contain the test files; however, I cannot figure out why it does not.
>
> Does anyone see any obvious mistakes that I am making?
>
> Apologies for the extensive email and thank you to anyone willing to help with this!!!
>
> - Jared Weyer
>
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#65963): https://lists.yoctoproject.org/g/yocto/message/65963
> Mute This Topic: https://lists.yoctoproject.org/mt/115908178/1686489
> Group Owner: [email protected]
> Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [[email protected]]
> -=-=-=-=-=-=-=-=-=-=-=-
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.