Полностью чистая сборка в проекте с Yocto

Добавлено 24 сентября 2023 в 03:54

В 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
Чистая сборка в Yocto

Примечание. Создание образа займет несколько часов в зависимости от количества ядер ЦП и установленного количества параллельных потоков.

Команда cleanall в bitbake

Команда cleanall удаляет выходные файлы рецептов, sstate-cache и скаченные файлы. Поэтому bitbake пересоберет рецепт с нуля

#для полной очистки рецепта
$ bitbake -fc cleanall <имя_рецепта>

Используемые флаги bitbake:

  • -c CMD – указывает задачу для выполнения (в данном случае это cleanall);
  • -f – принудительное выполнение указанной задачи.

Команда clean в bitbake

Команда clean удаляет выходные файлы из каталога tmp.

# очищаем выходные файлы рецепта
$ bitbake -c clean <имя_рецепта>

Оригинал статьи:

Теги

bitbakeYoctoАвтоматизация сборкиСистема сборки

На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.

В случае комментирования в качестве гостя (без регистрации на disqus.com) для публикации комментария требуется время на премодерацию.