Сборочная среда ABF: сборка пакета с учётом его обратных зависимостей — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
м (fix English url)
 
(не показана одна промежуточная версия этого же участника)
Строка 11: Строка 11:
 
[[File:Bbdt.jpg|center|400px]]
 
[[File:Bbdt.jpg|center|400px]]
  
{{Навигационная полоса|Документация по теме "Сборочная среда ABF"|[[Краткое руководство по работе в сборочной среде ABF]] • [[Сборочная среда ABF]] • [[Сборочная среда ABF: сборка пакета с учётом его обратных зависимостей]] • [[Сборочный сервер: механизм работы]] • [[Создание собственных сборочных клиентов для АБФ]]}}
+
{{Навигационная полоса|Документация по теме «Сборочная среда ABF»|[[Сборочная среда ABF]] • [[Краткое руководство по работе в сборочной среде ABF]] • [[ABF: Руководство пользователя]] • [[ABF: Руководство администратора]]}}
  
 
[[En:ABF: Automatic rebuild of package reverse dependencies]]
 
[[En:ABF: Automatic rebuild of package reverse dependencies]]

Текущая версия на 14:58, 3 марта 2014


Одной из особенностей ABF является возможность пересборки пакета вместе с его обратными зависимостями - в случае успешной сборки самого пакета, запускается пересборка всех пакетов, зависящих от него. Такой подход позволяет гарантировать, что репозиторий может в любой момент быть пересобран сам на себе. Например, автоматическая пересборка позволяет отследить влияние изменений в библиотеках на зависящие от них пакеты. Без пересборки, программы, собранные на старой версии библиотек, могут не работать либо работать неправильно с новыми версиями. При построении контейнера вычисляется дерево обратных зависимостей. Например, при сборке пакета «А» вычисляется, кому он нужен для сборки, например пакетам «Б» и «С», далее вычисляется кому нужны эти пакеты для сборки и тд.
Дерево строится уровнями

  1. gcc
  2. tar,kernel
  3. mc,firefox,mesa

Сборочный сервер собирает пакеты по уровням в несколько потоков, т.е сначала собирает 1 уровень, если сборка прошла успешно, то приступает к сборке 2 уровня и тд.
Если во время построения дерева были “петли” (пакету “А” нужен для сборки пакет “Б” , а пакету “Б” нужен “А”) то сборка будет происходить в 2 этапа: сначала соберутся все пакеты на все уровнях, далее они пересобирутся 2й раз, но с подключением результатов предыдущей сборки:

Bbdt.jpg
Документация по теме «Сборочная среда ABF»