OpenEmbedded - OpenEmbedded
Разработчики) | 75+ разработчиков[1] |
---|---|
Репозиторий | |
Операционная система | Linux |
Платформа | Кроссплатформенность |
Тип | Автоматизация сборки |
Лицензия | Массачусетский технологический институт |
Интернет сайт | www |
OpenEmbedded это автоматизация сборки рамки и кросс-компиляция среда, используемая для создания Дистрибутивы Linux за встроенные устройства.[2] Платформа OpenEmbedded разработана сообществом OpenEmbedded, которое было официально создано в 2003 году. OpenEmbedded - это рекомендуемая система сборки для Yocto Project, что является Linux Foundation рабочая группа, которая помогает коммерческим компаниям в разработке систем на базе Linux для встраиваемых продуктов.
Система сборки основана на BitBake «рецепты», которые определяют, как создается конкретный пакет, но также включают списки зависимостей и расположения исходного кода, а также инструкции по установке и удалению скомпилированного пакета. Инструменты OpenEmbedded используют эти рецепты для получения и исправления исходного кода, компиляции и компоновки двоичных файлов, создания двоичных пакетов (ipk, деб, об / мин ) и создавать загрузочные образы.
Исторически коллекция рецептов OpenEmbedded хранилась в едином репозитории, а метаданные были структурированы в форме, которая теперь называется «OpenEmbedded-Classic». К 2010 году становилось все труднее управлять постоянно растущим числом рецептов. Чтобы решить эту проблему, метаданные рецепта были разделены на несколько уровней. Самый нижний уровень, который включает в себя метаданные, не зависящие от платформы и распределения, называется «OpenEmbedded-Core».[3] Инструкции, зависящие от архитектуры, приложения и распространения, применяются на соответствующих целевых уровнях поддержки, которые могут отменять или дополнять инструкции с нижних уровней. Кроме того, изменения в рецептах на уровне ядра теперь управляются с помощью модели извлечения: вместо того, чтобы фиксировать свои изменения непосредственно в репозитории (как это было раньше), разработчики теперь отправляют свои исправления в список рассылки. Патчи, если они одобрены, затем объединяются (извлекаются) сопровождающим.[3]
Платформу OpenEmbedded можно установить и автоматически обновить через Git.[2]
История
Эта секция нуждается в расширении. Вы можете помочь добавляя к этому. (Август 2011 г.) |
В OpenEmbedded проект (OE для краткости) был создан Крисом Ларсоном, Майклом Лауэром и Хольгером Шуригом, объединив достижения OpenZaurus с участием таких проектов, как Знакомый Linux и OpenSIMpad в общую кодовую базу. OpenEmbedded заменил эти проекты и использовался для создания любого из них на основе той же кодовой базы. Существуют стабильные сборки обслуживания для старого OpenEmbedded-Classic,[4] хотя большая часть разработок основана или будет основываться на новом OpenEmbedded-Core в будущем.
В OpenEmbedded-Core Проект (OE-Core для краткости) возникла в результате слияния Yocto Project с OpenEmbedded.[5] Это самая последняя версия OpenEmbedded, и многие рецепты OE-dev доступны в OE-Core. Новые версии рецептов пакетов могут быть перенесены только на OpenEmbedded-Core.
Слой организации
OpenEmbedded-Core адаптировал эту многоуровневую структуру при слиянии с Yocto, и со временем добавлялись новые записи слоев.[6][7] Слои представляют собой структуру, имеющую только декларативный характер. Конкретные записи более строгие в плане определения того, какая запись предоставляет какие пакеты. Обзор слоев доступен в: слои
- Слой разработчика
- Пользовательский слой для настраиваемых рецептов Bitbake. Разработчики встроенного системного программного обеспечения разместили бы здесь свой рецепт, если бы программное обеспечение не соответствовало коммерческому или базовому уровню.
- Коммерческий слой
- Пакеты, плагины и конфигурации от поставщики с открытым исходным кодом войдите в этот слой.
- Уровень, специфичный для пользовательского интерфейса
- Слои, которые в настоящее время присутствуют в слое meta-openembedded:
- мета-эфл (Просвещение оконный менеджер)
- мета-гном (ГНОМ оконный менеджер)
- мета-gpe (GPE оконный менеджер)
- мета-xfce (Xfce оконный менеджер)
- Уровень, специфичный для оборудования
- мета-эфикамкс (Эфика устройства)
- мета-фсл-рука (Freescale Semiconductor официально поддерживаемые платы разработки)
- мета-фсл-рука-экстра (Freescale Semiconductor доски, поддерживаемые сообществом)
- мета-портативный (Персональные цифровые помощники, КПК)
- мета-интел (Intel встроенные устройства)
- мета-nslu2 (NSLU2 устройства)
- мета-openpandora (Openpandora устройства)
- мета-смартфон (различные смартфоны)
- мета-ти (Инструменты Техаса устройства)
- мета-xilinx (Xilinx устройства)
- мета-альтера (Альтера устройства)
- meta-ettus (Ettus Research USRP SDR устройства)
- (Другие)
- Уровень OpenEmbedded-Core
- openembedded-core
- мета-открытый
Поддерживаемые дистрибутивы
В OpenEmbedded-Classic конфигурации от Base- до UI-Layer могут быть дополнены различными Дистрибутивы Linux. Для OpenEmbedded доступен следующий список:
Поддерживаемое оборудование
Поддерживаются различные устройства:[11]
- Платы и процессоры
- В БигльДоска от Texas Instruments, Gumstix,[12][13] Nvidia Тегра и несколько I.MX устройства (например, I.MX28 серии)[14] от Freescale Semiconductor.[нужна цитата ]
- Другие известные платы, такие как PandaBoard также поддерживаются.[15][неправильный синтез? ][16][неправильный синтез? ] вместе с другим оборудованием.
- Некоторые устройства IBM PowerPC серии поддерживаются OpenEmbedded.[17]
- Смартфоны
- Смартфоны любят Nokia N800 и Neo FreeRunner поддерживаются.
- Перенос на новое оборудование
- Созвездие OpenEmbedded, особенно открытый дизайн, позволяет довольно легко заставить OpenEmbedded адаптировать новое оборудование.[18][неправильный синтез? ][19][неправильный синтез? ]
Смотрите также
Рекомендации
- ^ «Разработчики OpenEmbedded». Архивировано из оригинал на 2012-11-09.
- ^ а б Тормоз, обрыв; и другие. (2015), «Добро пожаловать в OpenEmbedded», OpenEmbedded Wiki, Блэксбург, Вирджиния: openembedded.org.
- ^ а б Эгглтон, Пол (2015), «OpenEmbedded-Core», OpenEmbedded Wiki, Блэксбург, Вирджиния: openembedded.org.
- ^ «2011.03-техническое обслуживание». Архивировано из оригинал на 2012-11-09. Получено 2011-09-30.
- ^ а б «Yocto Project объединяет технологии с OpenEmbedded и привлекает корпоративных сотрудников». Архивировано из оригинал на 2012-01-11.
- ^ а б Уровни Yocto и OpenEmbedded Core В архиве 2011-09-19 на Wayback Machine
- ^ «Индекс метаданных OpenEmbedded - слои». Архивировано из оригинал на 2013-06-22. Получено 2013-06-18.
- ^ "SHR".
- ^ Бен Комби на форуме разработчиков Palm - пятница, 16 июля 2010 г. Сборка статических библиотек В архиве 2011-07-26 на Wayback Machine
- ^ «Информационные решения B2C».
- ^ «Обзор машин с поддержкой оригинального оборудования». Архивировано из оригинал на 2011-09-28. Получено 2011-09-30.
- ^ Использование системы сборки OpenEmbedded для Gumstix В архиве 2011-09-02 на Wayback Machine
- ^ «Среда разработки TI Gumstix OpenEmbedded». Архивировано из оригинал на 2019-05-15. Получено 2019-11-28.
- ^ Неофициальная поддержка OpenEmbedded I.MX28 В архиве 2012-04-07 в Wayback Machine
- ^ "PandaBoard". Архивировано из оригинал 31 декабря 2015 г.
- ^ "ОМАП Ангстрем Майн".
- ^ Power.org devcon 07 OpenEmbedded презентация В архиве 2012-03-29 в Wayback Machine
- ^ Руководство по пакету поддержки Yocto Project Board
- ^ «Руководство по разработке проекта Yocto».