[oe] CROSS_DIR
Lorn Potter
lpotter at trolltech.com
Wed Nov 28 20:13:08 UTC 2007
Richard Purdie wrote:
> 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.
If CROSS_DIR is simply a symlink to staging, whats the point? I see no
point in setting this if it doesn't work as it used to, and put the
toolchain somewhere else, otherwise it's redundant and pointless.
>
>> 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.
You guys must like doing things the hard way. As per the old method,
CROSS_DIR can be used as a distributable toolchain. Now, _everything_
and their sister are there, which is not what a toolchain should be.
What is the path to whatever meta-toolchain creates? is it CROSS_DIR? or
somewhere in the build directory? which could very easily be in
someone's home directory, and not redistributable. Is there an good way
to set the path to it?
--
Lorn 'ljp' Potter
Software Engineer, Systems Group, MES, Trolltech
More information about the Openembedded-devel
mailing list