[oe] CROSS_DIR

Richard Purdie rpurdie at rpsys.net
Wed Nov 28 11:09:59 UTC 2007


On Wed, 2007-11-28 at 14:50 +1000, Lorn Potter wrote:
> Was CROSS_DIR changed somewhat recently (last 2 months or so) to link 
> the includes and lib dirs to staging?
> 
> If so, why? This means I cannot distribute this toolchain to other 
> machines, and makes the entries in the pkgconfig files wrong.

It was changed, yes. The reason was to remove duplication of files
between staging and cross. There are various reasons for doing that
including faster builds, less error prone builds (file duplication means
both copies have to be kept the same) and that cleaning this up assists
some future planned developments (e.g. sysroot and packaged staging).

The symlink is intended as a transition fix and ultimately we can switch
to the sysroot option of the toolchain for everything but gcc 3.3 and
earlier. Poky already has done so and it is *much* cleaner.

I have seen the pkgconfig problem and its unfortunate, I didn't realise
until it was too late. Its not more wrong than pointing at staging
really though. The good news is that it goes away entirely when we
switch to using sysroot options for pkgconfig.

> CROSS_DIR should mean just that - this is where I want the toolchain to 
> be - like it used to do.

Well, the cross toolchain components are still there. The target system
header/libraries (glibc and libc-headers-linux) only get installed to
the target system staging directory now though.

CROSS_DIR is not meant to be a toolchain you can transfer between
machines, its meant to be the cross components of the builds. If you
want a toolchain to transfer between machines you can build one with
meta-toolchain.

Cheers,

Richard






More information about the Openembedded-devel mailing list