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

Paul Eggleton paul.eggleton at linux.intel.com
Tue Jan 20 04:23:09 PST 2015


Hi Raphael,

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.
 
> I'm looking for the reason why there is a u-boot-fw-utils and a
> u-boot-fw-utils-cross. One produces a binary for the target and the
> other for???

Here's the start of the discussion that precipitated this move:

  http://lists.openembedded.org/pipermail/openembedded-core/2013-September/084280.html

Cheers,
Paul

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the yocto mailing list