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 |