Gentoo Archives: gentoo-embedded

From: Petric Frank <pfrank@×××.de>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] Beginner: Target Mips + nommu
Date: Thu, 05 Nov 2009 19:39:38
Message-Id: 200911051939.34602.pfrank@gmx.de
In Reply to: Re: [gentoo-embedded] Beginner: Target Mips + nommu by Petric Frank
1 Hello,
2
3 On Tuesday 03 November 2009 22:44:43 Petric Frank wrote:
4 > Hello,
5 > > > > Is uClinux the proper alternative for this
6 > > >
7 > > > In general it is the proper alternative for machines without MMU.
8 > > >
9 > > > > or are the mips kernels available in the portage tree patched to
10 > > > > cover this ?
11 > > >
12 > > > In theory that's possible, but I doubt it.
13 > >
14 > > As far as i understand the cross compile system - the uclibc built by
15 > > crossdev is the one the compiled software for the target to be linked
16 > > against. Resulting from this the uclibc must reflect the target system
17 > > (here especially: no-mmu).
18 > > Hope i am right here.
19 > >
20 > > So i tried to do this using the savedconfig use-flag. I broke to
21 > > compilation process while it is compiling uclibc. Then i did a "make
22 > > menuconfig" (in /var/tmp/...) and disabled MMU and (as followup) the
23 > > target file format to "STATIC FLAT" (i assume PIE is also not possible
24 > > because of the missing MMU).
25 > >
26 > > At restarting the crossdev execution i got an error while installing
27 > > uclibc. The compile step of the ebuild went well. At the installation
28 > > stage it complains that it is missing "utils/ldconfig.host" when doing
29 > > newbin. This can be seen in the ebuild in the src_install step. The
30 > > offending line is newbin utils/ldconfig.host ${CTARGET}-ldconfig | die
31 > >
32 > > So this file seems not to be generated during the uclibc built process
33 > > when PIE is off. This applies to ldd.host also.
34
35 Ok - another reply to myself (must be paranoid) ...
36
37 I've introduced bug #291787 which is now completed and the changes went
38 already to the portage tree.
39
40 It fixes the problem with the installation stage failure, where it tries to
41 install ldd and ldconfig. But these files will not be generated when uclibc
42 was directed to build static libs only.
43
44 So it remains a problem with gcc (at crossdev / gcc stage2) which does not
45 detect that the uclibc is static only and tries to build libgcc_s.so (oh - a
46 shared lib). As result the build process fails there.
47
48 See http://bugs.gentoo.org/show_bug.cgi?id=291870
49
50 regards
51 Petric