oe-pkgdata-util utility in Yocto

oe-pkgdata-util is helpful in determining why a file is included in the root file system.

For example, on the development machine:

$ oe-pkgdata-util find-path /etc/inittab
sysvinit-inittab: /etc/inittab
$ oe-pkgdata-util find-path */libncurses.so*
ncurses-libncurses: /lib64/libncurses.so.5
ncurses-libncurses: /lib64/libncurses.so.5.9
ncurses-dbg: /lib64/.debug/libncurses.so.5.9
lib32-ncurses-dbg: /lib/.debug/libncurses.so.5.9
ncurses-dev: /usr/lib64/libncurses.so
lib32-ncurses-dev: /usr/lib/libncurses.so
lib32-ncurses-libncurses: /lib/libncurses.so.5.9
lib32-ncurses-libncurses: /lib/libncurses.so.5

The other way is given a recipe and find out what files are generated by that recipe.

$ oe-pkgdata-util list-pkg-files -p lib32-ncurses

To list the individual packages a recipe provide:

$ oe-pkgdata-util list-pkgs -p lib32-ncurses
lib32-ncurses-libtinfo
lib32-ncurses-libncursesw
lib32-ncurses-libncurses
lib32-ncurses-libticw
lib32-ncurses-libtic
lib32-ncurses-libpanelw
lib32-ncurses-libpanel
lib32-ncurses-libmenuw
lib32-ncurses-libmenu
lib32-ncurses-libformw
lib32-ncurses-libform
lib32-ncurses-dbg
lib32-ncurses-staticdev
lib32-ncurses-dev
lib32-ncurses-doc
lib32-ncurses
lib32-ncurses-tools
lib32-ncurses-terminfo-base
lib32-ncurses-terminfo

Other commonly used options to use with oe-pkgdata-util are listed below:

  • oe-pkgdata-util list-pkgs [pattern]: Lists all packages that have been built, optionally limiting the match to packages that match pattern.
  • oe-pkgdata-util list-pkg-files package …: Lists the files and directories contained in the given packages.
  • oe-pkgdata-util lookup-recipe package …: Lists the name of the recipes that produce the given packages.

For more information on the oe-pkgdata-util command, use the help facility:

$ oe-pkgdata-util ‐‐help
$ oe-pkgdata-util subcommand --help
Related Post