如何列出使用oe-core构建的目标rootfs中安装的软件包?

时间:2015-10-10 15:09:26

标签: linux openembedded

出于纪录, 我正在寻找有效的方法来列出使用oe-core构建的目标rootfs中安装的软件包。

3 个答案:

答案 0 :(得分:1)

USER_CLASSES?=“buildname image-mklibs image-prelink buildhistory”

错误:在/opt/apps_proc/oe-core/meta/recipes-core/eglibc/eglibc_2.17.bb中执行python函数时出错:

导致此异常/失败的python调用的堆栈跟踪是: 文件:'buildhistory_emit_pkghistory',lineno:216,功能:

    0212:
    0213:        write_pkghistory(pkginfo, d)
    0214:
    0215:
 ***0216:buildhistory_emit_pkghistory(d)
    0217:

文件:'buildhistory_emit_pkghistory',lineno:207,功能:buildhistory_emit_pkghistory

    0203:        filelist = []
    0204:        pkginfo.size = 0
    0205:        for f in pkgfiles[pkg]:
    0206:            relpth = os.path.relpath(f, pkgdestpkg)
 ***0207:            fstat = os.lstat(f)
    0208:            pkginfo.size += fstat.st_size
    0209:            filelist.append(os.sep + relpth)
    0210:        filelist.sort()
    0211:        pkginfo.filelist = " ".join(filelist)

异常:OSError:[Errno 2]没有这样的文件或目录:'/ opt / apps_proc / oo-core / build / tmp-egglibc / work / armv7-vfp-neon-oe-linue-nuueabi / eglibc / 17 -R3 /包分割/ eglibc线程分贝/ LIB / libthread_db-1.0.so'

错误:功能失败:buildhistory_emit_pkghistory

答案 1 :(得分:1)

图像中安装的软件包列表存储在清单文件中(除了已经提到的构建历史记录)。

清单文件的内容如下所示:

alsa-conf cortexa7hf-neon-vfpv4 1.1.2-r0.1
alsa-conf-base cortexa7hf-neon-vfpv4 1.1.2-r0.1
alsa-lib cortexa7hf-neon-vfpv4 1.1.2-r0.1
alsa-states cortexa7hf-neon-vfpv4 0.2.0-r5.1
alsa-utils-alsactl cortexa7hf-neon-vfpv4 1.1.2-r0.5
alsa-utils-alsamixer cortexa7hf-neon-vfpv4 1.1.2-r0.5
...

该列表由包名称,体系结构和版本组成。

该清单位于部署目录中(即deploy/images/${MACHINE}/)。这里作为目录列表的示例(有目标图像和清单文件)

example-image-genericx86.ext3
example-image-genericx86.manifest
example-image-genericx86.tar.bz2

答案 2 :(得分:0)

将构建历史记录添加到local.conf中的USER_CLASSES变量

USER_CLASSES?=" buildhistory"

在build / buildhistory中重新运行构建外观以获取更多信息。

您可能需要强制重建才能正确填充目录。