Gentoo Archives: gentoo-dev

From: Mike Frysinger <vapier@g.o>
To: gentoo-dev@l.g.o
Cc: Ian Stakenvicius <axs@g.o>
Subject: Re: [gentoo-dev] Re: crossdev and multilib interference
Date: Thu, 27 Mar 2014 02:41:08
Message-Id: 4392318.HzopIDRGrh@vapier
In Reply to: Re: [gentoo-dev] Re: crossdev and multilib interference by Ian Stakenvicius
1 On Wed 26 Mar 2014 12:23:53 Ian Stakenvicius wrote:
2 > On 26/03/14 12:12 PM, Mike Frysinger wrote:
3 > > that's bs. people install crossdev to get a cross-compile
4 > > environment, not to get something that only works through `emerge`.
5 > > attempting to restrict it so it only works through `emerge` is
6 > > unacceptable and it has never been that way.
7 >
8 > it -does- make sense though to limit anything that one wants to EMERGE
9 > with the crossdev, to require the use of cross-emerge. Would it not
10 > be possible to somehow ensure the crossdev tools are ignored
11 > in/removed from/cannot pollute the standard emerge environment? Are
12 > there any use cases where one -would- want the crossdev to be used in
13 > a standard emerge environment instead of using cross-emerge ?
14
15 you've lost me. when you `emerge-$CTARGET`, that package doesn't go anywhere
16 near your ROOT=/ system. it's entirely contained in /usr/$CTARGET/.
17
18 when you run `crossdev $CTARGET`, it installs all the standard $CTARGET-xxx
19 tools in /usr/bin. this isn't "polluting" the environment at all ... in fact,
20 they're living right alongside existing tools.
21
22 as i pointed out elsewhere in this thread, the problem is that multilib relies
23 on automatic detection of the toolchain *failing* so that it falls back to the
24 native value. in other words, when you run `./configure --host=i686-pc-linux-
25 gnu`, it tries to find e.g. i686-pc-linux-gnu-ar. it doesn't exist so the
26 fallback is used (plain `ar`). multilib is using these tuples so that the
27 standard checks (autoconf/eclasses/etc...) trigger in the right ways for the
28 cpu/os/userland combinations.
29
30 since crossdev installs a full proper toolchain for the target, the one
31 multilib was using to lie now exists and its toolchain is used instead.
32 -mike

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Re: crossdev and multilib interference Alexandre Rostovtsev <tetromino@g.o>