You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Yocto Recipe从本地文件夹获取Pillow源码而非GitHub

配置Yocto使用本地Pillow源码替代GitHub仓库

步骤1:确认本地源码结构

确保你复制到my-downloads的是完整的Git仓库(包含.git目录),路径示例:my-downloads/Pillow/,且仓库的6.2.x分支与原Recipe对应版本一致。

步骤2:创建.bbappend文件

在你的自定义meta层中,创建路径recipes-devtools/python/(不存在则新建),然后在该路径下创建python3-pillow_%.bbappend文件。

步骤3:修改SRC_URI配置

在.bbappend文件中添加以下配置,覆盖原Recipe的GitHub源,指定本地Git仓库:

# 清除原有的GitHub Git源
SRC_URI = ""
# 添加本地Git仓库路径,根据实际路径调整
# 若my-downloads在Yocto项目根目录(TOPDIR)下:
SRC_URI += "git://${TOPDIR}/my-downloads/Pillow;branch=6.2.x;protocol=file"
# 若使用绝对路径,示例:
# SRC_URI += "git:///home/your-user/my-downloads/Pillow;branch=6.2.x;protocol=file"

可选:匹配SRCREV

如果本地仓库的commit哈希与原Recipe的SRCREV不一致,需要在.bbappend中添加对应commit的哈希值:

SRCREV = "你的本地仓库6.2.x分支的commit哈希"

步骤4:验证并编译

  1. 清除原有编译缓存:
    bitbake python3-pillow -c cleanall
    
  2. 重新编译Pillow:
    bitbake python3-pillow
    
  3. 查看编译日志,确认源码从本地仓库获取而非GitHub。

注意事项

  • 必须使用完整Git仓库:原Recipe基于Git源构建,本地路径需包含.git目录才能被BitBake识别为Git源。
  • 若使用压缩包替代Git仓库:需将源码打包为与原Recipe版本匹配的tar包,然后修改SRC_URI为file://Pillow-6.2.1.tar.gz,同时添加原Recipe对应的SRC_URI[sha256sum]值。
  • 确保自定义meta层已添加到bblayers.conf中,否则BitBake无法找到.bbappend文件。

内容的提问来源于stack exchange,提问作者User051209

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 18:13:07