Gentoo Archives: gentoo-embedded

From: Mike Frysinger <vapier@g.o>
To: Joakim Tjernlund <joakim.tjernlund@×××××××××.se>
Cc: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] /lib/libgcc_s.so.1 does not belong to any package?
Date: Mon, 19 Mar 2012 21:10:17
Message-Id: 201203191532.19884.vapier@gentoo.org
In Reply to: Re: [gentoo-embedded] /lib/libgcc_s.so.1 does not belong to any package? by Joakim Tjernlund
1 On Monday 19 March 2012 14:09:00 Joakim Tjernlund wrote:
2 > Mike Frysinger <vapier@g.o> wrote on 2012/03/19 01:51:53:
3 > > On Sunday 18 March 2012 14:53:44 Joakim Tjernlund wrote:
4 > > > What bugs me is that one can generally use /usr/$CTARGET as your root
5 > > > fs on your favourite embedded target. Doing so will loose libgcc_s.so
6 > > > as there isn't one installed. Having to install gcc into /usr/$CTARGET
7 > > > just to get libgcc_s is a bit much.
8 > >
9 > > why does this actually matter ? as noted, this hack is merely there to
10 > > support a split /usr setup. if you're using /usr/$CTARGET as your
11 > > rootfs, then you aren't going to have a split /usr, and thus the lib
12 > > copy is unnecessary.
13 >
14 > I don't quite understand. If I copy /usr/$CTARGET to my target board
15 > as rootfs there will be no libgcc on my target and NPTL needs it.
16
17 true, but the copying process to /lib is pretty orthogonal to that. if
18 anything, i plan on deprecating the gcc-config logic to only copying to /lib if
19 it detects that /usr is split.
20
21 as for the libgcc_s.so missing completely, today you have to:
22 ROOT=/usr/${CTARGET} emerge sys-devel/gcc
23 as libgcc_s.so isn't the only library you're missing. none of the gcc libs
24 are installed in there (libstdc++, libmudflap, libgfortran, etc...).
25
26 might be another useful hack script to include in crossdev ... give it a
27 /usr/$CTARGET to transparently sync gcc libs into from your cross-compiler.
28 obviously if you want to run `gcc` on the target though you're going to have
29 to do what i said above with the ROOT/emerge.
30
31 > > > Also, would it not be better if glibc showed up in
32 > > >
33 > > > export ROOT=/usr/${CTARGET} PKGDIR=${PORTDIR}/pkgs/${CTARGET}/pkgs
34 > > >
35 > > > quickpkg `qlist -IC` instead of
36 > > >
37 > > > export ROOT=/ PKGDIR=${PORTDIR}/pkgs/${CTARGET}/cross-tools quickpkg
38 > > >
39 > > > `qlist -IC cross-${CTARGET}` ?
40 > >
41 > > no. cross-${CTARGET}/glibc is a cross-compiler glibc, not a native one.
42 > > yes, you can run it through a script to move things around so that it'd
43 > > basically have the same install as a native glibc, but the existing one
44 > > is not.
45 > >
46 > > it might be useful to have crossdev automatically inject glibc into
47 > > package.provided for /usr/$CTARGET since attempting to install a native
48 > > one in there will hit conflicts.
49 >
50 > hmm, I always viewed glibc under /usr/$CTARGET as a native target glibc
51 > which could be copied to the target directly, but now you say it is not?
52
53 there are some things which we do not currently install with the cross-
54 compiler glibc. in the past, we didn't install any /bin or /sbin executables
55 at all, although that's changed recently. quickly checking the ebuild shows
56 that none of the locale helper scripts are installed. it wasn't my original
57 design decision, but i'm open to bringing down the differences.
58 -mike

Attachments

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

Replies