Я пытаюсь создать образ с помощью yocto, используя собственный источник (ядро Linux 3.16). Когда я пытаюсь запустить «bitbake myCustomRecipe», я получаю следующее предупреждение и ошибку:
WARNING: Unable to get checksum for myCustomRecipe SRC_URI entry defconfig: file could not be found
У меня есть несколько других предупреждений/ошибок, но я считаю, что они следуют естественным образом из-за приведенного выше предупреждения. Моя структура слоев выглядит так:
meta-mytestLayer
|
+--conf/
| |
| +--layer.conf
|
+--recipes-kernel/
|
+--linux/
|
+--myCustomRecipe_3.16/
| |
| +--defconfig
|
+--myCustomRecipe_3.16.bb
Как видите, в каталоге myCustomRecipe_3.16/ есть файл defconfig. Почему это не находят? Эта файловая структура очень похожа на те, которые я видел в нескольких учебниках (например, третья лабораторная работа этот документ). Мой layer.config выглядит так:
BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "myTestLayer"
BBFILE_PATTERN_myTestLayer = "^${LAYERDIR}/"
BBFILE_PRIORITY_myTestLayer = "6"
а мой рецепт выглядит так:
inherit kernel
require recipes-kernel/linux/linux-yocto.inc
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git;protocol=git;nocheckout=1;name=machine"
SRC_URI += "file://defconfig"
LINUX_VERSION ?= "3.16"
LINUX_VERSION_EXTENSION ?= ""
SRCREV_machine="f14680f1692a9ec2a5b1b716a7a0c03dd391106f"
PR = "r1"
PV = "${LINUX_VERSION}+git${SRCPV}"
COMPATIBLE_MACHINE = "qemux86"
Я полный новичок и просматриваю ряд лабораторий/справочных руководств/учебников, но не нашел ничего, связанного с этой конкретной проблемой. В основном я работаю со ссылкой, которую предоставил ранее, и использую этот раздел руководства Yocto Project по разработке ядра Linux.