I am trying to look at the https://layers.openembedded.org/layerindex/branch/dunfell/layers/ and add dhcp and dnsmasq to my image.
My local.conf has the following line:
CORE_IMAGE_EXTRA_INSTALL_append = " dhcpcd dnsmasq openssh iptables"
However, the bitbake fails with error ERROR: Nothing RPROVIDES 'dhcpcd'
Layer index: https://layers.openembedded.org/layerindex/branch/dunfell/recipes/?q=dhcp ; shows multiple entries including one in openembedded-core which I believe is the meta default layer.
In my pc, poky/meta shows:
classes
conf
COPYING.MIT
files
lib
recipes-bsp
recipes-connectivity
recipes-core
recipes-devtools
recipes-extended
recipes-gnome
recipes-graphics
recipes-kernel
recipes-multimedia
recipes-rt
recipes-sato
recipes-support
recipes.txt
site
Recipes-connectivity lists:
avahi
bind
bluez5
connman
dhcp
inetutils
iproute2
iw
libnss-mdns
libpcap
mobile-broadband-provider-info
neard
nfs-utils
ofono
openssh
openssl
ppp
ppp-dialin
resolvconf
socat
ssh-pregen-hostkeys
wpa-supplicant
I found the following files of importance:
dhcp/files/dhcpd.conf
dhcp/dhcp.inc
dhcp/dhcp_4.4.2.bb
Surprisingly dhcp-client in place of dhcpcd seems to work which makes no sense as there is no recipe file name with dhcp-server_...bb
Looks like my yocto should find the dhcp. So why is it failing?
You are using the good tools,
dhcpdis indeed present inopenembedded-core, but this meta is not the default one (poky/meta) !This
meta-networkingis from the parent metameta-openembedded.You can find it on GitHub (dunfell branch).
The recipe is in
meta-networking/recipes-connectivity/dhcpcd.You can see it on the recipe description on Openembedded Layer index
You need to clone this meta and add it your setup (
gbitbake-layersor manually)You can use
bitbake-layersto add/remove/create layers.To add a layer:
To show layers used:
You will find more help in the Yocto development manual
You can also modify manually your
<builddir>/conf/bblayers.conffile to add the path of your layer you want to add.