Getting a helloworld app installed in a yocto image, not having much luck

November 24, 2023, 23:59

shanedora

I have successfully got a helloworld app/recipe built and installed in my qemu image. However, when I try to take the same helloworld app/recipe and install it in my raspberrypi image I just don't see it down in /usr/bin/. Anyone really good w/ yocto here? Here's my recipe ...
# File: app-hello_0.1.bb
SUMMARY = "Simple Stupid Helloworld"
DESCRIPTION = "Simple stupid helloworld recipe using a github repo"
HOMEPAGE = "https : // github.com/rogueWookie/c-pjx-yocto-app-hello "
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1c036f239adde3d3505c1d394ed5d246"
SRC_URI = "git://github.com/rogueWookie/c-pjx-yocto-app-hello.git;protocol=https;branch=main"
SRCREV = "${AUTOREV}"
S = "${WORKDIR}/git"
do_install () {
    install -d ${D}${bindir}
    install -m 0755 ${S}/bld/main ${D}${bindir}
}
Here's my <build dir>/conf/local.conf ...
# I added this
MACHINE ?= "raspberrypi4-64"

# Stuff that was added for me
DISTRO ?= "poky"
EXTRA_IMAGE_FEATURES ?= "debug-tweaks"
CORE_IMAGE_EXTRA_INSTALL += "openssh"
USER_CLASSES ?= "buildstats"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS ??= "\
    STOPTASKS,${TMPDIR},1G,100K \
    STOPTASKS,${DL_DIR},1G,100K \
    STOPTASKS,${SSTATE_DIR},1G,100K \
    STOPTASKS,/tmp,100M,100K \
    HALT,${TMPDIR},100M,1K \
    HALT,${DL_DIR},100M,1K \
    HALT,${SSTATE_DIR},100M,1K \
    HALT,/tmp,10M,1K"
PACKAGECONFIG:append:pn-qemu-system-native = " sdl"
CONF_VERSION = "2"

# More stuff I added
ENABLE_UART = "1"
LICENSE_FLAGS_ACCEPTED = "synaptics-killswitch"
IMAGE_INSTALL:append = " app-hello"
Based on this I'm expected a binary called main to be placed in /usr/bin/ but it's no where to be see.

shanedora

Figured it out. Had to add the darn layer to my build.