我正在学习本教程: https://docs.yoctoproject.org/bitbake/bitbake-user-manual/bitbake-user-manual-hello.html
我的 bitbake 版本是 1.50.0,BBPATH 如下:
export BBPATH="/home/testusr/projects/bitbake_example/bitbake_sample_project/hello"
我在教程的最后一步,文件结构如下:
/home/testusr/projects/bitbake_example/bitbake_sample_project $ tree
.
├── hello
│ ├── classes
│ │ └── base.bbclass
│ └── conf
│ ├── bblayers.conf
│ └── bitbake.conf
└── mylayer
├── conf
│ └── layer.conf
└── printhello.bb
问题是当我尝试构建它时:
/home/testusr/projects/bitbake_example/bitbake_sample_project/hello $ bitbake printhello
WARNING: Layer mylayer should set LAYERSERIES_COMPAT_mylayer in its conf/layer.conf file to list the core layer names it is compatible with.
Loading cache: 100% | | ETA: --:--:--
Loaded 0 entries from dependency cache.
WARNING: No bb files in default matched BBFILE_PATTERN_mylayer '^\/home\/testusr\/projects\/bitbake_example\/bitbake_sample_project\/mylayer/'
ERROR: Nothing PROVIDES 'printhello'
警告说下没有没有bb文件: /home/testusr/projects/bitbake_example/bitbake_sample_project/mylayer/
但是这个文件显然在那里,可以在树输出中看到,所以我完全困惑。
答案 0 :(得分:0)
问题出在 layer.conf 文件中的教程。它有:
BBFILES += "${LAYERDIR}/\*.bb"
代替:
BBFILES += "${LAYERDIR}/*.bb"
这就是找不到它的原因。