bitbake SRC_URI文件://

时间:2015-01-07 09:18:17

标签: path environment-variables uri yocto bitbake

如果我在本地目录中有一个tarball,helloworld.tar.gz,比如/ home / user / tarballs /,如何从该目录中获取bitbake配方?

我的helloworld.bb是

SECTION = "examples"
LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://COPYING; md5=1b1b8016e15e07a2fec59623ebf12345"

SRC_URI = "file://helloworld.tar.gz"

但是当我咬嘴时,我收到以下警告信息:

WARNING: Unable to get checksum for helloworld SRC_URI entry helloworld.tar.gz: file could not be found

我读过有关FILES的内容,FILESEXTRAPATHS会影响下载路径,但不确定在何处/如何设置它们。

我做了一个bitbake -c show FILESEXTRAPATHS但收到错误信息:

ERROR: Nothing PROVIDES 'FILESEXTRAPATHS'

3 个答案:

答案 0 :(得分:14)

好吧,如果你想从本地目录中获取,请使用例如:

SRC_URI = "file:///home/user/tarballs/helloworld.tar.gz"

FILES和FILESEXTRAPATHS变量告诉bitbake在哪里找到引用的文件:

SRC_URI = "file://helloworld.tar.gz"

在这两个变量指定的位置搜索这些文件。 (或者更确切地说,搜索FILESEXTRAPATHS,然后搜索FILESEXTRAPATHS中指定的目录的一些可能的子目录,其中包括DISTRO,MACHINE,ARCH等的扩展值)。

FILES(和FILESEXTRAPATHS)用于查找与元数据一起存储的文件,即在路径meta- / recipes - / name / XXX下。

请参阅http://www.yoctoproject.org/docs/1.7/mega-manual/mega-manual.html#var-FILEShttp://www.yoctoproject.org/docs/1.7/mega-manual/mega-manual.html#var-FILESEXTRAPATHS

答案 1 :(得分:3)

最好是将文件保存在当前(.bb文件存在的位置)目录中,并在.bb文件中给出以下行。

FILESEXTRAPATHS_prepend := "${THISDIR}:"
SRC_URI = "file://helloworld.tar.gz"

FILESEXTRAPATHS_prepend:告诉bitbake文件存在于.bb文件所在的位置。

答案 2 :(得分:1)

您还可以如下编辑.bb文件,

FILESEXTRAPATHS_prepend := "path_to_home_folder_of_source_folders:"
SRC_URI = "file://Source_floder/*"

作为示例

FILESEXTRAPATHS_prepend := "/home/username/:"
SRC_URI = "file://tarballs/*"