Reputation: 2275
On Yocto Project FAQ:
The Yocto Project and OpenEmbedded share a core collection of metadata called openembedded-core. However, the two organizations remain separate, each with its own focus. OpenEmbedded provides a comprehensive set of metadata for a wide variety of architectures, features, and applications. The Yocto Project focuses on providing powerful, easy-to-use, interoperable, well-tested tools, metadata, and board support packages (BSPs) for a core set of architectures and specific boards.
I still not getting nothing clear. The two frameworks are meant to build Linux distributions. But I would like to know on what they are distinct specifically. Not only techically but also objectivly, so I can argue why to choose one or another.
Moreover, why Yocto has so much prominence? altough OE being the first build framework.
ps: I have worked with Yocto Project, but not with OE.
Upvotes: 14
Views: 10190
Reputation: 1
Here is what i concluded after researching:
What I think of it as an Analogy:
cmake
and make
both are two options to build a software project, but what their actually difference is:
make
is the real building tool that builds your project through reading the makefile and generates the binary files. CMake
is a generator that generates the building configurations including the makefile that then should be built through "make" to build your project and generate the binaries. So cmake makes it alot easier for you to build a complex project without needing to write the makefile yourself, it generates it for you instead.
So the same here:
bitbake
-> make
OE-Core
-> makefile
OpenEmbedded
-> make build-system (make
+ makefile
)
poky
-> cmake
yocto-project -> the whole build ecosystem (cmake
+ make
+ additional tools
)
Here is a definition for each component as of what i understood:
OpenEmbedded
:
is the framework used for building linux distributions through using bitbake(the building tool) and it was made before yocto-project.
It contains the OpenEmbedded-Core (OE-CORE) which are the base set of recipes and configurations used for building embedded linux.
Yocto-project:
poky
:
It is the Yocto-project reference for linux distribution.
It provides a ready-to-use environment that includes all the essential components (OE-Core, Bitbake, yocto-specific metadata, yocto-specific BSP) needed to build a Linux distribution.
So it does the work for you, where you build a linux distribution with just two commands rather than configuring OE and assemble everything manually.
Hope this was helpful!
Upvotes: 0
Reputation: 4063
The key point is that the Yocto Project is a community/organisation, and not something you can buy/download/install.
Some of the things that the Yocto Project works on includes bitbake (the build tool), OpenEmbedded Core (the essential recipes to build systems, such as glibc/gcc/systemd), some BSPs, and tooling/services (error reporting service, autobuilder, etc).
The OpenEmbedded community predates Yocto and at the time had a different focus, but now we both contribute to the same projects so there's no real difference.
Upvotes: 18