[yocto] Difference between target, cross, native and nativesdk.
Denys Dmytriyenko
denis at denix.org
Wed Jan 21 13:31:50 PST 2015
On Wed, Jan 21, 2015 at 09:23:35PM +0000, Richard Purdie wrote:
> On Wed, 2015-01-21 at 14:27 -0500, Denys Dmytriyenko wrote:
> > 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.
>
> -cross and -crosssdk do not generate packages.
Yeah, I thought so initially, but then I found depmodwrapper-cross and
qemuwrapper-cross packages in my deploy/ipk, which got me confused... They
seem to be special cases and only have scripts and not binaries. I wonder if
the name is misleading...
> Another way to think of this is:
>
> "native" build once
>
> "cross" build once per target, run on native, output code for target
>
> "crosssdk" build once per sdk, run on native, output code for sdk
>
> "cross-canadian" build once per sdk, run on sdk, output code for target
>
> Whilst native.bbclass and nativesdk.bbclass are useful generally,
> cross.bbclass is only useful for GNU tool projects like
> binutils/gcc/gdb.
>
> Cheers,
>
> Richard
>
More information about the yocto
mailing list