gpt4 book ai didi

yocto - 使用 bitbake SRC_URI 文件 ://fetcher 从解压的源树中剥离基本路径

转载 作者:行者123 更新时间:2023-12-04 14:00:10 24 4
gpt4 key购买 nike

说明书here说有一个 basepath选项 SRC_URI这应该“在解包时从源路径中剥离指定的目录”。

我正在尝试从本地目录中获取源代码,例如 /src/someproject .
为此,我按如下方式配置了我的食谱:
SRC_URI="file:///src/someproject;subdir=source;basepath=/src/someproject"
目的是让来源取自 /src/someproject 目录并放入 build/tmp/work/target/someproject/1.0-r1/source/ .相反,我正在获取来源 build/tmp/work/target/someproject/1.0-r1/source/src/someproject .

有没有办法摆脱/src/someproject里面的子目录source ?

最佳答案

您指向的文档适用于 2014 年 4 月发布的 yocto 1.6。basepath参数似乎已在以后的版本中删除,没有大张旗鼓,也没有明显的替换。
相反,您可以执行以下操作:

SRCDIR = "/path/to/your/files"
SRC_URI = "file://${SRCDIR}/contents/;subdir=src"
S = "${WORKDIR}/src"
然后您就可以在 ${S}/${SRCDIR} 下访问您的文件.
如果您发现使用 ${SRCDIR}部分太麻烦,可以勾上 do_patch目标,需要 prefunc机制而不是 _prepend如果你想使用 shell 脚本,如 do_patch否则用python编写:
relocate_source() {
mv ${S}/${SRCDIR}/* ${S}/
rmdir ${S}/${SRCDIR}
}
do_patch[prefunc] += "relocate_source"
这将在应用您可以添加到 SRC_URI 的任何补丁之前重新组织您的源代码。 .
还要注意一个 file:// URI 未缓存在 ${DL_DIR} 中,所以没有名称冲突要处理(我们需要在 downloadfilename= URI 中使用 http:// 的方式)。

关于yocto - 使用 bitbake SRC_URI 文件 ://fetcher 从解压的源树中剥离基本路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50451961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com