나는 Yocto에서 사용하는 커널을 (학습 연습으로) 변경하기로 결정했지만 Yocto에서 사용하는 커널이 어디에 저장되어 있는지 모르겠습니다. 레시피에 저장되어 있다는 것은 이해하지만 어떤 레시피에 저장되어 있는지 전혀 모르겠습니다. 아는 사람 있나요? 저는 문자 그대로 몇 가지 명령(아래 나열)을 입력하고 있습니다. 귀하의 컴퓨터에서 자유롭게 수행할 수 있습니다.
$ git clone http://git.yoctoproject.org/git/poky
$ cd poky
$ git checkout -b fido origin/fido
$ source oe-init-build-env
$bitbake core-image-minimal
$runqemu qemux86
답변1
Yocto에서 사용하는 커널이 어디에 저장되어 있는지 모르겠습니다.
구성 파일에는 poky/meta/conf/machine/include/qemu.inc
다음 줄이 있습니다.
# Use a common kernel recipe for all QEMU machines
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
이는 bitbake가 경로에서 커널 레시피를 찾도록 지시합니다.포키/메타/레시피-커널/리눅스/
이제 해당 경로에서 두 가지 레시피를 볼 수 있습니다.
- 리눅스-yocto_4.1.bb
- 리눅스-yocto_4.4.bb
설계상 bitbake는 다음을 사용할 것입니다.리눅스-yocto_4.4.bb즉, 4.4 커널은 qemux86 머신용으로 구축됩니다. 그 이유는 bitbake가 가장 높은 레시피 버전을 선호하도록 설계되었기 때문입니다.
나는 Yocto에서 (학습 연습으로) 사용되는 커널을 변경하기로 결정했습니다.
이 답변의 시작 부분에서 지적한 구성 파일에서 한 줄을 더 추가할 수 있습니다.
PREFERRED_VERSION_linux-yocto = "4.1%"
이 한 줄을 추가하면 bitbake가 사용됩니다.poky/meta/recipes-kernel/linux/linux-yocto_4.1.bb레시피, 즉 qemux86용 4.1 커널.