[yocto] Difference between target, cross, native and nativesdk.

Denys Dmytriyenko denis at denix.org
Wed Jan 21 11:27:26 PST 2015


On Wed, Jan 21, 2015 at 11:23:38AM -0200, Raphael Philipe wrote:
> I was explained about the difference in a different way.
> 
> cross generates binary for the host architecture. But the way this
> binary is generated depends of the target architecture. Native
> generated binaries that do not depend of the target architecture.

Pretty much.

But another big difference is that -native packages do not generate IPK, RPM 
or DEB, while -nativesdk, -cross, -crosssdk and -cross-canadian do.

-- 
Denys


> On Tue, Jan 20, 2015 at 12:44 PM, Paul Eggleton
> <paul.eggleton at linux.intel.com> wrote:
> > On Tuesday 20 January 2015 12:39:16 Raphael Philipe wrote:
> >> On Tue, Jan 20, 2015 at 10:23 AM, Paul Eggleton
> >> <paul.eggleton at linux.intel.com> wrote:
> >> > On Tuesday 20 January 2015 09:17:49 Raphael Philipe wrote:
> >> >> I'm working on a set of recipes that must be configurable to be baked
> >> >> in native, nativesdk, cross and target.
> >> >>
> >> >> I have a bunch of questions concerning this terms. I searched the
> >> >> documentation and wasn't able to find a definitive explanation for
> >> >> these terms.
> >> >>
> >> >> I will write some statements bellow about my understanding on these
> >> >> terms, and I will ask you to please correct me if I'm wrong or add any
> >> >> additional information:
> >> >>
> >> >> - By default, recipes bake binaries for the target architecture that
> >> >> is described in the MACHINE variable in the local.conf
> >> >
> >> > Correct.
> >> >
> >> >> - One can use BBCLASSEXTEND = "native nativesdk" to bake binaries for
> >> >> the host architecture (native) and for target sdk architecture. The
> >> >> target sdk architecture is described in the SDKMACHINE variable and
> >> >> the host architecture is the architecture of the machine executing
> >> >> bitbake. BBCLASSEXTEND = "native nativesdk" will alow you to bake
> >> >> recipes that are "virtual" using the suffix native ( so ${PN}-native)
> >> >> and the prefix nativesdk (so nativesdk-${PN}).
> >> >
> >> > Correct. FYI alternatively you can also "inherit native" or "inherit
> >> > nativesdk" to make a recipe specific to either of those classes (in which
> >> > case the recipe itself should be named <something>-native or nativesdk-
> >> > <something>), however BBCLASSEXTEND is preferred these days.
> >> >
> >> >> - Recipes that are cross need to inherit cross.bbclass. They are used for
> >> >> ????
> >> >
> >> > Cross tools, i.e. tools that need to run in the native context and produce
> >> > some binary output for the target.
> >>
> >> For u-boot-fw-utils-cross, the binary that you refer is the enviroment
> >> variables file of u-boot? In this case, the difference between cross
> >> and native is not clear for me.
> >
> > I'm not sure of the details for this recipe specifically. Perhaps one of the
> > people on CC can answer.
> >
> > Cheers,
> > Paul
> >
> > --
> >
> > Paul Eggleton
> > Intel Open Source Technology Centre
> -- 
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto



More information about the yocto mailing list