[oe] Installing RPM packages in SDK sysroot

Adam Lee adam.yh.lee at gmail.com
Thu Jun 26 23:39:04 UTC 2014


Hello everyone, in the section 4.2. Configuring the PMS of the Yocto ADT
manual, it describes adding packages to a target sysroot using OPKG. This
method works well as documented. However my choice of package manager is
Yocto's default - RPM. And I was not able to successfully install RPM
packages in the SDK sysroot.

Ultimately, I think installing RPM packages using SmartPM fails because the
list of installed packages is not included in the SDK sysroot. A deployable
image contains a file called Packages in /var/lib/rpm. The SDK sysroot does
not have this file and shows 0 installed packages when I run `smart stats`.
Note that when I am using OPKG instead of RPM, I have the equivalent
package index file in /var/lib/opkg/lists for both sysroot and deployable
images.

I can still attempt to install a package, but it quite literally wants to
rebuild the entire rootfs. For example, running `smart install opencv-dev`
warns that it has to install 400 packages. These packages include
base-files, bash, m4, make, python-dev etc.

So this makes me think that either RPM is not supported in SDK sysroot or
the feature is incomplete. It's also possible that I have missed an
important detail.

I will be looking into the sdk class and the package manager class to see
what's really happening. In the meanwhile I'd appreciate if someone can
provide some pointers!

Thanks,

Adam



More information about the Openembedded-devel mailing list