Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Проект Yocto

Глава 23 из книги "Архитектура приложений с открытым исходным кодом", том 2.

Оригинал: The Yocto Project
Автор: Elizabeth Flanagan
Дата публикации: 23 Октября 2012 г.
Перевод: А.Панин
Дата перевода: 14 Июля 2013 г.

Creative Commons. Перевод был сделан в соответствие с лицензией Creative Commons. С русским вариантом лицензии можно ознакомиться здесь.

Проект Yocto является проектом с открытым исходным кодом, выступающим в роли отправной точки для разработчиков встраиваемых систем на основе Linux в ходе создания специализированных дистрибутивов программных продуктов вне зависимости от применяемого для этого аппаратного обеспечения. Благодаря спонсорской помощи со стороны организации Linux Foundation, проект Yocto является системой, функционально превосходящей простые системы сборки. Он предоставляет в распоряжение разработчиков инструменты, процессы, шаблоны и методы для быстрого создания и внедрения продуктов в рамках рынка встраиваемых систем. Одним из ключевых компонентов проекта Yocto является система сборки Poky Build system. Так как Poky является большой и сложной системой, мы сфокусируем свое внимание на одном из ее ключевых компонентов с названием BitBake. BitBake является инструментом для сборки, созданным под впечатлением от системы Portage из дистрибутива Gentoo и используемым как проектом Yocto, так и сообществами OpenEmbeeded для работы с метаданными и создания образов Linux-систем на основе их исходного кода.

В 2001 году компания Sharp Corporation представила КПК SL-5000 с названием Zaurus, работающий под управлением дистрибутива Linux для встраиваемых систем с названием Lineo. Спустя некоторое время после представления КПК Zaurus, Chris Larson основал проект OpenZaurus Project, направленный на создание дистрибутива на основе Linux для замены существующего в SharpROM и использующий систему сборки с названием buildroot. После создания проекта сторонние участники начали добавлять поддержку новых пакетов программного обеспечения наряду с дополнительными возможностями сборки дистрибутивов для других устройств незадолго до того, как система сборки проекта OpenZaurus начала давать сбои. В январе 2003 года в сообществе началось обсуждение возможности создания новой системы сборки, поддерживающей модель функционирования сообщества в рамках стандартной системы сборки дистрибутивов на основе Linux для встраиваемых систем. В конечном счете это привело к созданию проекта OpenEmbedded. Chris Larson, Michael Lauer и Holger Shurig начали работу в рамках проекта OpenEmbedded с портирования сотен пакетов проекта OpenZaurus для работы с новой системой сборки.

Благодаря этой работе был создан проект Yocto. В основе проекта лежала система сборки Poky, созданная Richard Purdle. Проект начинал свое существование в виде стабилизированной ветки проекта OpenEmbedded, используя основной набор сотен рецептов проекта OpenEmbedded для сборки под ограниченное количество архитектур. Со временем проекты были объединены в нечто большее, чем система сборки программного обеспечения для встраиваемых систем и сформировали завершенную платформу для разработки программного обеспечения с плагином для среды разработки Eclipse, заменой инструмента fakeroot и возможностью работы с образами на основе QEMU. Примерно в ноябре 2010 года организация Linux Foundation выступила с заявлением о том, что работа над системой будет продолжаться в рамках проекта Yocto, получающего спонсорскую поддержку от Linux Foundation. После этого было установлено соглашение о том, что проекты Yocto и OpenEmbedded будут осуществлять координацию работы над ключевым набором метаданных пакетов, называемым OE-Core, комбинируя лучшие черты систем Poky и OpenEmbedded с увеличивающимися масштабами использования уровней для дополнительных компонентов.


Далее: Введение в систему сборки Poky Build System