1 |
On Tue, 2007-11-06 at 15:19 -0500, Jason wrote: |
2 |
> Jean-Claude Gervais wrote: |
3 |
> > On Tue, 2007-11-06 at 13:11 -0500, Jason wrote: |
4 |
> >> Jean-Claude Gervais wrote: |
5 |
> >>> On Tue, 2007-11-06 at 12:46 -0500, Jason wrote: |
6 |
> >>>> Jean-Claude Gervais wrote: |
7 |
> >>>>> Same problem, different environment: |
8 |
> >>>>> |
9 |
> >>>>> I produced a cross-development toolkit by using the following command: |
10 |
> >>>>> |
11 |
> >>>>> .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- |
12 |
> >>>>> SYSROOT="/usr/arm-softfloat-linux-uclibc" |
13 |
> >>>>> |
14 |
> >>>>> UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --binutils 2.17 --gcc |
15 |
> >>>>> 3.4.6-r2 --kernel 2.6.19-r2 --libc 0.9.28.3 --ex-gdb --target |
16 |
> >>>>> arm-softfloat-linux-uclibc |
17 |
> >>>>> .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- |
18 |
> >>>>> |
19 |
> >>>>> This went well; all the required tools were built. |
20 |
> >>>>> |
21 |
> >>>>> But now when I try to use the (modified) xmerge script, I get the |
22 |
> >>>>> "C compiler cannot create executables" error |
23 |
> >>>> [snip] |
24 |
> >>>>> configure:1225: checking build system type |
25 |
> >>>>> configure:1243: result: i686-pc-linux-gnu |
26 |
> >>>>> configure:1250: checking host system type |
27 |
> >>>>> configure:1264: result: i686-softfloat-linux-uclibc |
28 |
> >>>>> configure:1272: checking target system type |
29 |
> >>>>> configure:1286: result: i686-softfloat-linux-uclibc |
30 |
> >>>> This doesn't look right. Did you setup ${SYSROOT}/etc/make.conf and |
31 |
> >>>> ${SYSROOT}/etc/make.profile ? |
32 |
> >>> I think I did; here is the contents of |
33 |
> >>> /usr/arm-softfloat-linux-uclibc/etc/make.conf |
34 |
> >>> |
35 |
> >>> .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- |
36 |
> >>> ACCEPT_KEYWORDS="arm" |
37 |
> >>> ARCH="arm" |
38 |
> >>> |
39 |
> >>> CFLAGS="-Os -pipe -mfloat-abi=softfp -mfpu=vfp" |
40 |
> >>> CHOST="i686-softfloat-linux-uclibc" |
41 |
> >> This line should be: |
42 |
> >> CHOST="arm-softfloat-linux-uclibc" |
43 |
> > |
44 |
> > OK, I changed that line, performed a |
45 |
> > crossdev -C arm-softfloat-linux-uclibc |
46 |
> > |
47 |
> > And then re-ran the toolchain build procedure I am using; |
48 |
> |
49 |
> judging by your initial ncurses build error, you haven't successfully |
50 |
> xmerge'd anything into SYSROOT, so all you had to do was change CHOST in |
51 |
> ${SYSROOT}/etc/make.conf, then try xmerge ncurses again. |
52 |
> |
53 |
> > SYSROOT="/usr/arm-softfloat-linux-uclibc" |
54 |
> > |
55 |
> > UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --binutils 2.17 --gcc |
56 |
> > 3.4.6-r2 --kernel 2.6.19-r2 --libc 0.9.28.3 --ex-gdb --target |
57 |
> > arm-softfloat-linux-uclibc |
58 |
> |
59 |
> crossdev doesn't use SYSROOT, it creates it. So there is no need to set it. |
60 |
> |
61 |
> > Which concluded with no errors. |
62 |
> > |
63 |
> > However, when I run any xmerge, I still get the same error |
64 |
> > "C compiler cannot create executables" |
65 |
> |
66 |
> Did you repeat Section 3 of the cross-development guide after blowing |
67 |
> away SYSROOT with crossdev -C <target>? |
68 |
|
69 |
Yes, absolutely. |
70 |
|
71 |
> And set CHOST correctly? |
72 |
|
73 |
You mean in /usr/arm-softfloat-linux-uclibc/etc/make.conf ? |
74 |
Yes. |
75 |
|
76 |
The make.conf at that location is |
77 |
|
78 |
ACCEPT_KEYWORDS="arm" |
79 |
ARCH="arm" |
80 |
|
81 |
CFLAGS="-Os -pipe -mfloat-abi=softfp -mfpu=vfp" |
82 |
CHOST="arm-softfloat-linux-uclibc" |
83 |
CXXFLAGS="${CFLAGS}" |
84 |
GENTOO_MIRRORS="http://open-systems.ufl.edu/mirrors/gentoo |
85 |
http://prometheus.cs.wmich.edu/gentoo http://mirror.datapipe.net/gentoo |
86 |
http://ftp.ucsb.edu/pub/m$ |
87 |
INPUT_DEVICES="keyboard" |
88 |
MAKEOPTS="-j2" |
89 |
USE="minimal symlink" |
90 |
UCLIBC_CPU="ARM920T" |
91 |
|
92 |
|
93 |
-- |
94 |
gentoo-embedded@g.o mailing list |