mmnano50
mmnano50

Reputation: 37

Install an executable created by another recipe in Yocto

On Yocto, I have a recipe (application_1.0.0.bb) with a dependency to Poco package (poco_1.11.2.bb):

DEPENDS = "poco"

In the configure step of application_1.0.0.bb, I need to use arc. This is an executable that the Poco recipe generates. In the poco/1.11.2-r0 workdir, I can see it under poco/1.11.2-r0/package/usr/bin/arc. However, it is not transfered to the application workdir.

I need a bbappend recipe but I cannot seem to make it work, poco_%.bbappend:

do_install:append() {
    install -d ${D}${bindir}
    install -m 0755 ${WORKDIR}/package/usr/bin/arc ${D}${bindir}

This gives an already stripped error, so I added INSANE_SKIP:${PN}:append = "already-stripped" but arc is still not present in application_1.0.0 WORKDIR.

Upvotes: 0

Views: 872

Answers (1)

void_brain
void_brain

Reputation: 673

do_install is a task where files are copied from build system to build target. Hence, it is mandatory to use variable FILES_PN to install files in your target.

Then, I advice you to add in your .bbappend:

FILES_PN += "/usr/bin/arc"

Note that do_install:append is a deprecated method. Use do_install_append instead. Also, you can remove this task if arc executable is already inside your workdir. You need to read documentation https://docs.yoctoproject.org/

Upvotes: 1

Related Questions