无法安装自定义Python Wheel文件的Yocto Warrior自定义Bitbake食谱,因为未找到pip3

时间:2019-06-25 15:04:50

标签: python linux python-3.x yocto bitbake

我正在使用meta-tegra为NVIDIA Jetson Nano构建自定义图像。我需要PyTorch,但没有配方。我在设备上构建了PyTorch,并将其包装到设备上的轮子中。现在,我想将该轮子集成到我的自定义Yocto图层中。我的映像包括python3-pip,我可以在设备上启动pip3。问题是,当我尝试执行我的Bitbake配方时,Bitbake总是失败,并显示以下错误:

/home/ubuntu/Desktop/comp-jetson-yocto/build/tmp/work/jetson_nano-poky-linux/torch/1.1.0-r0/temp/run.do_install.16557: 115: /home/ubuntu/Desktop/comp-jetson-yocto/build/tmp/work/jetson_nano-poky-linux/torch/1.1.0-r0/temp/run.do_install.16557: pip3: not found

这是我的食谱:

DESCRIPTION = "NVIDIA's version of Python Torch"
HOMEPAGE = "https://nvidia.com"
LICENSE = "BSD-3-Clause"

inherit setuptools3

RDEPENDS_${PN} = "python3 \
                  python3-pip \
                  "

SRC_URI = "\
        file://torch-1.1.0-cp37-cp37m-linux_aarch64.whl \
        file://LICENSE \
"

SRC_URI[md5sum] = "9ec85425a64ca266abbfdeddbe92fb18"
SRC_URI[sha256sum] = "3b9b8f944962aaf550460409e9455d6d6b86083510b985306a8012d01d730b8b"

COMPATIBLE_MACHINE = "(tegra)"
COMPATIBLE_MACHINE_comp = "(-)"

LIC_FILES_CHKSUM = "file://../LICENSE;md5=acf4d595f99e159bf31797aa872aef57"

S = "${WORKDIR}/${PN}-${PV}"

do_configure() {
        :
}

do_compile() {
        :
}

do_install() {
        pip3 install torch-1.1.0-cp37-cp37m-linux_aarch64.whl
}

PACKAGE_ARCH = "jetson_nano"

我无法在Google上找到有关如何使我的食谱使用pip安装自定义滚轮文件的任何有用信息。我该怎么做?谢谢。

2 个答案:

答案 0 :(得分:1)

Bitbake需要pip3的本机版本:

DEPENDS = "python3-pip-native"

答案 1 :(得分:0)

我必须在安装行中使用 ${WORKDIR},所以 pip3 安装 ${WORKDIR}/torch-1.1.0-cp37-cp37m-linux_aarch64.whl 这是因为安装命令在构建目录中运行,但 .whl 文件在 WORKDIR

也不需要这行 S = "${WORKDIR}/${PN}-${PV}"