出于记录目的,我正在寻找有效的方法来列出安装在使用 oe-core 构建的目标 rootfs 中的包。
3 回答
镜像中安装的软件包列表存储在清单文件中(除了已经提到的构建历史)。
清单文件的内容如下所示:
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
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',行号:216,函数:
0212:
0213: write_pkghistory(pkginfo, d)
0214:
0215:
***0216:buildhistory_emit_pkghistory(d)
0217:
文件:'buildhistory_emit_pkghistory',行号: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/oe-core/build/tmp-eglibc/work/armv7a-vfp-neon-oe-linux-gnueabi/eglibc/2.17-r3/包拆分/eglibc-thread-db/lib/libthread_db-1.0.so'
错误:函数失败:buildhistory_emit_pkghistory
将构建历史记录添加到 local.conf 中的 USER_CLASSES 变量
USER_CLASSES ?= “构建历史”
重新运行构建后,请在 build/buildhistory 中查看更多信息。
您可能需要强制重建以正确填充目录。