OpenEmbedded - OpenEmbedded
![]() | |
Vývojáři | 75+ vývojářů[1] |
---|---|
Úložiště | ![]() |
Operační systém | Linux |
Plošina | Cross-platform |
Typ | Vytvářejte automatizaci |
Licence | MIT |
webová stránka | www |
OpenEmbedded je stavět automatizaci rámec a křížová kompilace prostředí použité k vytvoření Linuxové distribuce pro vestavěná zařízení.[2] Rámec OpenEmbedded je vyvíjen komunitou OpenEmbedded, která byla formálně založena v roce 2003. OpenEmbedded je doporučený systém sestavení Yocto Project, což je Linux Foundation pracovní skupina, která pomáhá komerčním společnostem při vývoji systémů založených na Linuxu pro vestavěné produkty.
Systém sestavení je založen na BitBake „recepty“, které určují, jak je konkrétní balíček vytvořen, ale také obsahují seznamy závislostí a umístění zdrojového kódu, stejně jako pokyny, jak nainstalovat a odebrat kompilovaný balíček. Nástroje OpenEmbedded používají tyto recepty k načítání a opravování zdrojového kódu, kompilaci a propojení binárních souborů, produkci binárních balíčků (ipk, deb, ot / min ) a vytvořte zaváděcí obrázky.
Historicky byla kolekce receptů OpenEmbedded uložena v jediném úložišti a metadata byla strukturována do formy, která se nyní nazývá „OpenEmbedded-Classic“. Do roku 2010 bylo stále obtížnější zvládnout stále rostoucí počet receptů. Abychom to vyřešili, byla metadata receptu rozdělena do několika vrstev. Nejnižší vrstva, která zahrnuje metadata nezávislá na platformě a distribuci, se nazývá „OpenEmbedded-Core“.[3] Pokyny specifické pro architekturu, specifické pro aplikaci a závislé na distribuci se používají v příslušných cílových podpůrných vrstvách, které mohou přepsat nebo doplnit pokyny z nižších vrstev. Kromě toho se změny receptů v základní vrstvě nyní spravují pomocí pull modelu: místo provádění změn přímo do úložiště (jak tomu bylo dříve), vývojáři nyní odesílají své opravy do seznamu adresátů. Patche, pokud jsou schváleny, jsou poté sloučeny (vytaženy) správcem.[3]
Rámec OpenEmbedded lze nainstalovat a automaticky aktualizovat pomocí Git.[2]
Dějiny
![]() | Tato sekce potřebuje expanzi. Můžete pomoci přidávat k tomu. (Srpna 2011) |
The OpenEmbedded Project (OE zkráceně) vytvořili Chris Larson, Michael Lauer a Holger Schurig a spojili tak úspěchy OpenZaurus s příspěvky z projektů jako Známý Linux a OpenSIMpad do společného základu kódů. OpenEmbedded tyto projekty nahradil a byl použit k vytvoření kteréhokoli z nich ze stejné kódové základny. Pro starou OpenEmbedded-Classic existují stabilní sestavení údržby,[4] ačkoli většina vývoje je nebo bude v budoucnu založena na novém OpenEmbedded-Core.
The OpenEmbedded-Core Projekt (OE-jádro zkráceně) výsledkem sloučení Yocto Project s OpenEmbedded.[5] Toto je nejnovější verze OpenEmbedded a mnoho receptů OE-dev je k dispozici v OE-Core. Novější verze receptů balíčků se mohou portovat pouze pro OpenEmbedded-Core.
Organizace vrstev
OpenEmbedded-Core přizpůsobil tuto vrstvenou strukturu sloučení s Yocto a postupem času byly přidány nové položky vrstvy.[6][7] Vrstvy představují strukturu, která má pouze deklarativní povahu. Konkrétní položky jsou přísnější v rozsahu rozhodování, který záznam poskytuje které balíčky. Přehled vrstev je k dispozici v: vrstvy
- Vývojová vrstva
- Uživatelem definovaná vrstva pro vlastní recepty Bitbake. Pokud by software nevyhovoval komerční nebo základní vrstvě, vývojáři softwaru pro vestavěný systém by sem umístili svůj recept.
- Komerční vrstva
- Balíčky, doplňky a konfigurace z prodejci open source jít do této vrstvy.
- Vrstva specifická pro uživatelské rozhraní
- Vrstvy aktuálně přítomné ve vrstvě meta-openembedded:
- Vrstva specifická pro hardware
- meta-efikamx (Efika zařízení)
- meta-FSL-rameno (Freescale Semiconductor oficiálně podporované vývojové desky)
- meta-FSL-rameno-extra (Freescale Semiconductor komunity podporované desky)
- meta-ruční (Osobní digitální asistenti, PDA)
- meta-Intel (Intel vestavěná zařízení)
- meta-nslu2 (NSLU2 zařízení)
- meta-openpandora (Openpandora zařízení)
- meta-smartphone (různá zařízení smartphone)
- meta-ti (Texas Instruments zařízení)
- meta-xilinx (Xilinx zařízení)
- meta-altera (Altera zařízení)
- meta-ettus (Ettus Research USRP Zařízení SDR)
- (Ostatní)
- Vrstva OpenEmbedded-Core
- openembedded-core
- meta-openembedded
Podporované distribuce
V OpenEmbedded-Classic lze konfigurace od Base- po UI-Layer doplnit různými Linuxové distribuce. Pro OpenEmbedded je k dispozici následující seznam:
Podporovaný hardware
Jsou podporována různá zařízení:[11]
- Desky a zpracovatelé
- The BeagleBoard od společnosti Texas Instruments, Gumstix,[12][13] Nvidia Tegra a několik I.MX zařízení (např. I.MX28 série)[14] od společnosti Freescale Semiconductor jsou podporovány.[Citace je zapotřebí ]
- Další dobře známé desky jako PandaBoard jsou také podporovány.[15][nesprávná syntéza? ][16][nesprávná syntéza? ] spolu s dalším hardwarem.
- Některá zařízení IBM PowerPC série jsou podporovány OpenEmbedded.[17]
- Chytré telefony
- Chytré telefony jako Nokia N800 a Neo FreeRunner jsou podporovány.
- Přenos na nový hardware
- Konstelace OpenEmbedded, zejména otevřený design, mu umožňuje poměrně snadno přizpůsobit OpenEmbedded nový hardware.[18][nesprávná syntéza? ][19][nesprávná syntéza? ]
Viz také
Reference
- ^ „OpenEmbedded Developers“. Archivovány od originál dne 09.11.2012.
- ^ A b Brzda, Cliff; et al. (2015), „Vítejte v OpenEmbedded“, OpenEmbedded Wiki, Blacksburg, VA: openembedded.org.
- ^ A b Eggleton, Paul (2015), „OpenEmbedded-Core“, OpenEmbedded Wiki, Blacksburg, VA: openembedded.org.
- ^ „2011.03-údržba“. Archivovány od originál dne 09.11.2012. Citováno 2011-09-30.
- ^ A b „Projekt Yocto spojuje technologii s OpenEmbedded a získává firemní spolupracovníky“. Archivovány od originál dne 11.01.2012.
- ^ A b Yocto & OpenEmbedded Core Layers Archivováno 19. září 2011 v Wayback Machine
- ^ "OpenEmbedded Metadata Index - vrstvy". Archivovány od originál dne 22.06.2013. Citováno 2013-06-18.
- ^ „SHR“.
- ^ Ben Combee na fóru pro vývojáře Palm - pá 16. července 2010. Budování statických knihoven Archivováno 26.07.2011 na Wayback Machine
- ^ „Informační řešení B2C“.
- ^ "Přehled strojů podporovaných OE". Archivovány od originál dne 28. 9. 2011. Citováno 2011-09-30.
- ^ Používání systému OpenEmbedded Build pro Gumstix Archivováno 02.09.2011 na Wayback Machine
- ^ „Vývojové prostředí TI Gumstix OpenEmbedded“. Archivovány od originál dne 2019-05-15. Citováno 2019-11-28.
- ^ Neoficiální podpora OpenEmbedded I.MX28 Archivováno 07.04.2012 na Wayback Machine
- ^ „PandaBoard“. Archivovány od originál dne 2015-12-31.
- ^ „OMAP Angstrom Main“.
- ^ Power.org devcon 07 OpenEmbedded prezentace Archivováno 2012-03-29 na Wayback Machine
- ^ Průvodce balíčkem podpory Yocto Project Board
- ^ „Příručka pro vývoj projektů Yocto“.