Bitbake fails, No match for argument: spdlog

I am trying to add the spdlog library to a custom BSP 5.2 build. This library is available through openembedded in the meta-oe layers. I added the library to the IMAGE_INSTALL variable in local.conf. This worked in BSP 5.1, but now with 5.2 I get the following error

ERROR: os-acu3-image-1.0-r0 do_rootfs: Could not invoke dnf. Command '/home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/rootfs/etc/yum.repos.d --installroot=/home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/rootfs --setopt=logdir=/home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/temp --repofrompath=oe-repo,/home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/oe-rootfs-repo --nogpgcheck install apt atftpd avahi-utils dhcp-server dialog dnf dpkg fmt gdbserver gpsd inetutils jansson kernel-devsrc libserialport libssh2 libxml2 linuxptp lrzsz net-snmp-dev nodejs nodejs-npm ntpdate openssh-sftp-server openssl opkg packagegroup-base-extended packagegroup-base-tdx-cli packagegroup-basic packagegroup-benchmark-tdx-cli packagegroup-boot packagegroup-core-boot packagegroup-core-eclipse-debug packagegroup-core-tools-debug packagegroup-devel-tdx-cli packagegroup-machine-tdx-cli packagegroup-networking-tdx-cli packagegroup-utils-large-tdx-cli packagegroup-utils-tdx-cli postfix rpm ruby run-postinsts smartmontools spdlog systemd-analyze tcf-agent timestamp-service udev-extraconf zeromq locale-base-en-us' returned 1:
DNF version: 4.2.2
cachedir: /home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/rootfs/var/cache/dnf
Added oe-repo repo from /home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/oe-rootfs-repo
repo: using cache for: oe-repo
not found other for: 
not found modules for: 
not found deltainfo for: 
not found updateinfo for: 
oe-repo: using metadata from Wed 07 Apr 2021 03:42:15 PM UTC.
No module defaults found
No match for argument: spdlog
Error: Unable to find a match

ERROR: Logfile of failure stored in: /home/mmorgan/oe-core/build/tmp/work/apalis_imx6-tdx-linux-gnueabi/os-acu3-image/1.0-r0/temp/log.do_rootfs.110225
ERROR: Task (/home/mmorgan/oe-core/build/../layers/meta-orbitalsystems/recipes-images/images/ failed with exit code '1'
NOTE: Tasks Summary: Attempted 6203 tasks of which 6202 didn't need to be rerun and 1 failed.
NOTE: Writing buildhistory
NOTE: Writing buildhistory took: 2 seconds

Summary: 1 task failed:
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

I know the recipe is present, and it does build/compile spdlog, I watched it do that. But it fails when reaching do_rootfs. Any thoughts as to what might be causing this? I have attempted to clean the spdlog tasks and rebuild. I have even deleted the tmp and sscache folders and still the same result.


According to the recipe the spdlog recipe provides a header only library and thus the spdlog package itself is empty and not created.
You likely should try to add spdlog-dev instead of spdlog. That way you would get the header files into the image.
There is also a static library in the created package spdlog-staticdev which may or may not be needed for whatever you want to do with that rootfs in addition to spdlog-dev.

Note that installing either or of the two packages only makes sense if you plan to compile on the module against that library.

From the git history I doubt that this was any different in BSP 5.1.0.


@max.tx Thank you for your response. The purpose for adding this to the build was to save from having to add it to the rather large software package that will be installed in hopes of lowering compile times a little bit. But it isn’t purely necessary. It is possible that before we had used spdlog-dev before, I will try it. Thanks again

Hi @mmorgan1361

Is your issue solved?

Best regards,