我想在我的yocto/openembedded项目中添加更多的python模块,但是我不确定该怎么做?我希望添加flask及其依赖项。

最佳答案

一些在meta文件夹中具有相应配方的python软件包,例如Enum类:
meta-openembedded/meta-python/recipes-devtools/python/python-enum34_1.1.6.bb
不幸的是,没有很多有用的类,但是python应用程序可能需要一些有用的类。习惯在引导平台上使用pip安装缺少的软件包?但是如果目标产品未连接IP网络怎么办?解决方案是实现新配方并至少添加到平台元层。示例是keyboard模块的配方,可用于拦截按键/按钮触摸事件:

  • 使用PyPi网站确定该软件包是否可用:
  • https://pypi.org/project/keyboard/
    软件包描述页面上的
  • 下载文件:
  • https://github.com/boppreh/keyboard/archive/master.zip
  • 收集一些填写新食谱所需的有用信息:
  • 概要-可以从软件包描述页面
  • 中获得
  • HOMEPAGE-github,bitbucket或sourceforge等上的项目URL
  • 许可证-验证许可证类型
  • LIC_FILES_CHKSUM,方法是对位于软件包根目录中的现有md5sumLICENSEREADME文件(最好是
  • )执行PKG-INFO
  • SRC_URI [md5sum]-是归档文件本身的md5sum。在支持脚本inherit pypi
  • 的帮助下,它将自动用于在pypi服务器上发现和下载存档
  • PYPI_PACKAGE_EXT-如果软件包不是tar.gz,则需要提供正确的扩展名
  • 创建缺少的python-keyboard_0.13.1.bb配方:

  • `
    SUMMARY = "Hook and simulate keyboard events on Windows and Linux"
    HOMEPAGE = "https://github.com/boppreh/keyboard"
    LICENSE = "BSD-3-Clause"
    LIC_FILES_CHKSUM = "file://PKG-INFO;md5=9bc8ba91101e2f378a65d36f675c88b7"
    
    SRC_URI[md5sum] = "d4b90e53bbde888e7b7a5a95fe580a30"
    SRC_URI += "file://add_missing_CHANGES_md.patch"
    
    PYPI_PACKAGE = "keyboard"
    
    PYPI_PACKAGE_EXT = "zip"
    
    inherit pypi
    inherit setuptools
    
    BBCLASSEXTEND = "native nativesdk"
    

    `
  • 该软件包已通过添加
  • 进行了修补
    SRC_URI += "file://add_missing_CHANGES_md.patch"
    由于缺少CHANGES.md脚本用来标识软件包版本的setup.py文件,因此对配方的指令无效(此步骤是可选的)。补丁本身必须放在与配方名称匹配的配方旁边的文件夹中,但不能使用版本:
    python-keyboard

    10-08 08:11
    查看更多