Gentoo Archives: gentoo-embedded

From: Mike Frysinger <vapier@g.o>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] installing binary pkgs created with crossdev
Date: Fri, 03 May 2013 19:04:49
Message-Id: 201305031504.50602.vapier@gentoo.org
In Reply to: [gentoo-embedded] installing binary pkgs created with crossdev by Joakim Tjernlund
1 On Thursday 02 May 2013 16:27:04 Joakim Tjernlund wrote:
2 > Note the KEYWORDS, installing pkgs using crossdev directly doesn't care
3 > about KEYWORDS
4 > but installing the same as binary pkgs respects KEYWORDS, a bit asymmetric
5 > but not a big deal
6
7 that's not really accurate. crossdev sets up keywords in
8 /etc/portage/package.keywords/ so that it uses versions that correspond to the
9 target arch. so if you're generating a cross-compiler for powerpc, you don't
10 want to install a glibc version that has KEYWORDS=-ppc just because it also
11 has KEYWORDS=amd64 (and your host system is amd64).
12
13 when installing the binpkgs, the /etc/portage/package.keywords/ setting isn't
14 in place, so now you have to lie by using a hack like your ACCEPT_KEYWORDS.
15
16 > However this is somewhat confusing, I had to run
17 > binutils-config powerpc-softfloat_4.5.3-linux-gnu-2.21.1
18 > manually after installing the binary pkgs, is that expected?
19
20 no, you shouldn't have to do that. you can see the pkg_postinst for binutils:
21 toolchain-binutils_pkg_postinst() {
22 # Make sure this ${CTARGET} has a binutils version selected
23 [[ -e ${ROOT}/etc/env.d/binutils/config-${CTARGET} ]] && return 0
24 binutils-config ${CTARGET}-${BVER}
25 }
26
27 your CTARGET should have been set to 'powerpc-softfloat_4.5.3-linux-gnu', and
28 if you didn't have that target already installed on that system, things should
29 have "just worked".
30
31 if you did already have a binutils installed for that target, then binutils-
32 config would have (rightfully) not been run.
33
34 > On a side note I can mention, installing a binary x86 binutils on a amd64
35 > host requires CHOST:
36 > CHOST=i686-pc-linux-gnu binutils-config
37 > powerpc-softfloat_4.5.3-linux-gnu-2.21.1
38
39 trying to mix x86 & amd64 packages are known not to work. no one is
40 interested in supporting that today (ever?).
41
42 although, if this is the same setup as when you installed the binpkgs above,
43 then that's probably why.
44
45 > Finally, running gdb yields:
46 > # powerpc-softfloat_4.5.3-linux-gnu-gdb
47 > Python Exception <type 'exceptions.NameError'> name 'os' is not defined:
48
49 if this is the same binpkg as you described above (built for x86 but deployed
50 to amd64), then this makes sense. gdb has been configured against a 32bit
51 python, but your host has only a 64bit python.
52 -mike

Attachments

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

Replies

Subject Author
Re: [gentoo-embedded] installing binary pkgs created with crossdev Joakim Tjernlund <joakim.tjernlund@×××××××××.se>