Полностью чистая сборка в проекте с Yocto
В Yocto для сборки рецептов используется bitbake. Для полностью чистой сборки необходимо пересобрать все рецепты с нуля.
Чтобы выполнить полностью чистую сборку в Yocto, вы можете выполнить следующие шаги:
1. Удалить каталог кеша sstate
bitbake использует кеш sstate, чтобы определить, какие рецепты необходимо пересобрать.
# Удалить каталог кеша sstate
$ rm -rf sstate-cache/
2. Удалить каталог tmp
Это выходной каталог, в этом каталоге bitbake генерирует конечный образ.
# Удалить каталог tmp
$ rm -rf tmp/
3. Запустить команду bitbake
Теперь мы готовы начать полностью чистую сборку в Yocto.
# Запуск bitbake
$ bitbake core-image-minimal
Примечание. Создание образа займет несколько часов в зависимости от количества ядер ЦП и установленного количества параллельных потоков.
Команда cleanall в bitbake
Команда cleanall удаляет выходные файлы рецептов, sstate-cache и скаченные файлы. Поэтому bitbake пересоберет рецепт с нуля
#для полной очистки рецепта
$ bitbake -fc cleanall <имя_рецепта>
Используемые флаги bitbake:
-c CMD– указывает задачу для выполнения (в данном случае этоcleanall);-f– принудительное выполнение указанной задачи.
Команда clean в bitbake
Команда clean удаляет выходные файлы из каталога tmp.
# очищаем выходные файлы рецепта
$ bitbake -c clean <имя_рецепта>
Оригинал статьи:
