Yocto setup.py 需要 pyserial

Yocto setup.py requires pyserial

我正在尝试将 https://github.com/kliment/Printrun 打包到 Yocto 食谱中,但无法正常工作。我的食谱目前看起来如下:

LICENSE = "AGPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"

PV = "2.7"
SRCREV = "0193a9dbe31458c45059bf2dcb0a9905b7bb06fc"
SRC_URI = "git://github.com/kliment/Printrun.git;protocol=git;branch=master"

RDEPENDS_${PN} = "python-cython \
                  python-pyserial \
"

S = "${WORKDIR}/git"

inherit distutils

我假设这是我需要做的,因为它有一个继承自 distutils 的 setup.py?如果是这样,这不起作用,我收到一个错误,抱怨缺少串行模块:

DEBUG: Executing shell function do_compile
WARNING: Failed to cythonize: No module named Cython.Build
Traceback (most recent call last):
  File "setup.py", line 36, in <module>
    from printrun.printcore import __version__ as printcore_version
  File "/home/gerhard/Jethro/yocto/build/out-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/printrun/2.7-r0/git/printrun/printcore.py", line 20, in <module>
    from serial import Serial, SerialException, PARITY_ODD, PARITY_NONE
ImportError: No module named serial
ERROR: python setup.py build execution failed.
ERROR: Function failed: do_compile (log file is located at /home/gerhard/Jethro/yocto/build/out-glibc/work/armv7at2hf-vfp-neon-angstrom-linux-gnueabi/printrun/2.7-r0/temp/log.do_compile.15542)

我也希望能够用cython编译小型cythonable模块。由于某种原因,cython 和 psyerial 都不可用,即使我将它们添加为 rdepends,我做错了什么?

您仅在运行时添加了对 python cython 的依赖。我猜你还需要添加编译。

DEPENDS_${PN} = "python-cython \
                  python-pyserial"