Wind River Support Network


LIN5-18242 : Deployed sysroot Missing Header(s) in usr/include

Created: Mar 10, 2014    Updated: Dec 19, 2017
Resolved Date: Jul 24, 2014
Found In Version:
Fix Version:
Severity: Standard
Applicable for: Wind River Linux 5
Component/s: Build & Config


Customer is observing an odd behavior regarding the sysroot that gets generated.
This is related to the file libudev.h.  They can see it in the project sysroot on the building host in <proj dir>/bitbake_build/tmp/sysroots/fsl-imx6-iavs/usr/include, but when they look at the deployed sysroot on their app development host, they don’t see that file in the sysroot usr/include.


Two workarounds proposed:
1. Copy the missing header file over manually after the export
2. Apply the following workaround in bsp/layers/oe-core/ :
--- a/meta/recipes-core/udev/
+++ b/meta/recipes-core/udev/
@@ -48,6 +48,7 @@ INITSCRIPT_PARAMS_udev-cache = "start 36 S ."
 FILES_${PN} += "${libexecdir} ${libdir}/ConsoleKit"
 RRECOMMENDS_${PN} += "udev-utils"
+RRECOMMENDS_${PN} += "libudev libudev-dev"
 FILES_${PN}-dbg += "${libexecdir}/.debug"
 FILES_${PN}-dev = "${datadir}/pkgconfig/udev.pc"

Steps to Reproduce

1. After you have successfully configured and built a platform project, you need to export the SDK for
application development.
2. Generate SDK: $ make export-sdk
3. Validate libudev.h gets correctly added to the local sysroot:
$ find bitbake_build/tmp/sysroots/ -name "libudev.h"

3. Run this script to install the SDK.
4. Once complete, look for the missing header file: $find sysroots/ -name libudev.h

*** Expected result:
 The header file (libudev.h) is found in sysroot (within the SDK)

*** Actual result:
 The header file is missing from the SDK

Other Downloads

Live chat