Увидел свет релиз платформы для создания встраиваемых Linux-систем Yocto 1.3. Yocto не является конечным дистрибутивом, а предоставляет набор компонентов для создания собственных дистрибутивов для встраиваемых продуктов на базе различных аппаратных архитектур, в том числе ARM, PPC, MIPS, x86 и x86-64. Yocto предоставляет разработчикам встраиваемых систем полный спектр решений на базе существующих готовых компонентов, позволяя минимизировать затраты на разработку прототипа системы и сфокусировать усилия на процессе разработки и создании специфичных для продукта возможностей.
Платформа развивается под крылом организации Linux Foundation после объединения усилий международным сообществом инженеров Consumer Electronics Linux Forum (CELF) и при участии многих известных компаний, таких как Texas Instruments, FreeScale, Intel, Mentor Graphics, Wind River, MontaVista, Dell и OpenEmbedded eV. В марте прошлого года проекты Yocto и OpenEmbedded объединили свои усилия и перешли к использованию общего ядра системы сборки и использованию единых Linux-компонентов (мета-данные OpenEmbedded Core). В рамках проекта развивается несколько наборов для поддержки аппаратных платформ (Board Support Package, BSP), поддерживающих такие системы, как Intel Atom-PC, Freescale MPC8315e-RDB, TI BeagleBoard/OMAP и Ubiquiti RouterStation Pro.
В состав платформы входит инструментарий разработчика, система сборки, набор программных интерфейсов и коллекция мета-пакетов. В качестве базового набора компиляторов задействован GCC 4.7, поддерживается создание GUI-приложений с использованием библиотек Qt, Clutter и GTK+. В состав проекта также входит пакет Cross-Prelink, позволяющий существенно ускорить загрузку программ, связанных с большим количеством библиотек.
В Yocto задействована система сборки Poky, являющаяся ответвлением от OpenEmbedded Build System и позволяющая объединить в рамках дистрибутива разрозненные приложения. Пакеты распространяются в формате RPM5. Для контроля за инфраструктурой сборки используется ПО Swabber, для выполнения привилегированных операций задействован Pseudo, для организации автоматизированного тестирования используются технологии Shoeleather Lab.
Для упрощения разработки приложений для платформ на базе Yocto подготовлено два плагина - для среды разработки Eclipse и для Anjuta IDE, которые поддерживают развёртывание проектов на удалённых системах, отладку, анализ кода, кросс-компиляцию и использование эмулятора QEMU. Предусмотрена возможность генерации SDK, оптимизированного для продуктов, построенных на базе Yocto.
Ключевые новшества Yocto 1.3:
- В состав включён код первого значительного выпуска проекта yocto-autobuilder, в рамках которого подготовлен инструментарий для автоматизации создания тестов и оценки качества продуктов, развиваемых на базе Yocto;
- Улучшена реализация консольного интерфейса пользователя, в котором расширены возможности по оценке выполняемых в текущий момент задач;
- В пользовательском интерфейсе Hob, используемом для построения образов системы, проведена работа по улучшению юзабилити;
- Исключён промежуточный этап сборки инструментария кросскомпиляции;
- Обновлены версии базовых компонентов: eglibc 2.16, GCC 4.7, ядро Linux 3.4.11, вместо module-init-tools задействован kmod;
- Добавлен скрипт yocto-bsp для автоматизации создания начального состава новых наборов поддержки платформ (BSP). BSD для эталонного оборудования отделены от Poky-конфигураций эталонных дистрибутивов;
- Добавлена поддержка формирования SDK, одновременно с образом системы;
- В загрузчике GRUB по умолчанию включена поддержка загрузки на системах с EFI;
- В Mesa задействована возможность предоставления акселерированной графики GLES через EGL, без использования X11;
- Добавлен скрипт для отслеживания времени сборки различных компонентов дистрибутива, по аналогии с работой "bootcharts" для оценки времени загрузки;
- Плагин для Eclipse обновлён до версии Juno, добавлена поддержка удалённой отладки через tcf и ssh.