1

我正在尝试构建一个运行 tensorflow-lite 应用程序的容器映像。这个应用程序还包括我作为包包含的示例

do_rootfs由于缺少依赖项,构建失败。这是我得到的错误,由dnf

ERROR: container-tensorflow-lite-label-image-1.0-r0 do_rootfs: Could not invoke dnf. Command '/data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/recipe-sysroot-native/usr/bin/dnf -v --rpmverbosity=info -y -c /data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/rootfs/etc/dnf/dnf.conf --setopt=reposdir=/data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/rootfs/etc/yum.repos.d --installroot=/data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/rootfs --setopt=logdir=/data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/temp --repofrompath=oe-repo,/data/yocto/build/tmp/fullmetalupdate-containers/work/imx8mqevk-fullmetalupdatecontainers-linux/container-tensorflow-lite-label-image/1.0-r0/oe-rootfs-repo -x busybox-syslog,busybox-udhcpc --nogpgcheck install tensorflow-lite-examples tensorflow-lite tensorflow-lite-staticdev' returned 1:
DNF version: 4.1.0

...

Error: 
 Problem: package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6()(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(CXXABI_1.3)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.11)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.14)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.15)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.20)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.21)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.9)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(CXXABI_1.3.5)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.18)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(CXXABI_1.3.8)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.19)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++.so.6(GLIBCXX_3.4.22)(64bit), but none of the providers can be installed
  - package tensorflow-lite-examples-1.14-r0.aarch64 requires libstdc++6 >= 8.3.0, but none of the providers can be installed
  - conflicting requests
  - nothing provides /bin/sh needed by libstdc++6-8.3.0-r0.aarch64

我是 Yocto 的新手,不知道从那里去哪里。我该如何解决这种问题?

这是我的 tensorflow 配方中与包依赖项相关的行:

RDEPENDS_${PN}-dev = "${PN}-staticdev"

PACKAGES += "${PN}-examples"

ALLOW_EMPTY_${PN} = "1"

FILES_${PN} = ""

FILES_${PN}-dev = " \
    ${includedir} \
"

FILES_${PN}-staticdev = " \
    ${libdir} \
"

FILES_${PN}-examples = " \
    ${bindir}/${PN} \
    ${bindir}/${PN}-${PV}/examples/label_image \
    ${bindir}/${PN}-${PV}/examples/grace_hopper.bmp \
    ${bindir}/${PN}-${PV}/examples/minimal \
    ${bindir}/${PN}-${PV}/examples/benchmark_model \
    ${bindir}/${PN}-${PV}/examples/mobilenet_v1_0.25_224.tflite \
    ${bindir}/${PN}-${PV}/examples/mobilenet_v1_0.25_224_quant.tflite \
    ${bindir}/${PN}-${PV}/examples/mobilenet_v1_1.0_224.tflite \
    ${bindir}/${PN}-${PV}/examples/mobilenet_v1_1.0_224_quant.tflite \
    ${bindir}/${PN}-${PV}/examples/mobilenet_quant_v1_224.tflite \
    ${bindir}/${PN}-${PV}/examples/labels.txt \
"

提前致谢,如果您需要更多信息,请询问。

4

1 回答 1

0
nothing provides /bin/sh needed by libstdc++6-8.3.0-r0.aarch64

您可能只需要将 bash 添加到您的图像(在 local.conf 中):

IMAGE_INSTALL_append = " bash"
于 2020-03-03T09:54:38.560 回答