1 |
On Thu, 2007-11-01 at 07:25 -0400, Jason wrote: |
2 |
> Jean-Claude Gervais wrote: |
3 |
> > On Wed, 2007-10-31 at 20:43 +0100, Pal Szasz wrote: |
4 |
> >> Just a little addition: there is another flag which might be involved: |
5 |
> >> |
6 |
> >> -mfloat-abi=softfp |
7 |
> >> |
8 |
> > |
9 |
> > How do I pass those flags to the compiler by using crossedev? |
10 |
> > |
11 |
> > Here's the shell script I am currently using. |
12 |
> > I changed it to go with Jason's recommended toolset versions but I am |
13 |
> > still getting the same linking errors about floating-point |
14 |
> > incompatibilities... |
15 |
> > |
16 |
> > .-.-.-.-.-.-.- |
17 |
> > |
18 |
> > #!/bin/bash |
19 |
> > |
20 |
> > CBUILD="i686-pc-linux-gnu" |
21 |
> > |
22 |
> > CHOST=$CBUILD |
23 |
> > |
24 |
> > CTARGET="arm-softfloat-linux-uclibc" |
25 |
> > |
26 |
> > #export ROOT="/usr/arm-softfloat-linux-uclibc" |
27 |
> > |
28 |
> > PORTAGE_CONFIGROOT="/usr/arm-softfloat-linux-uclibc" |
29 |
> > |
30 |
> > UCLIBC_CPU="ARM920T" USE="-*" crossdev -v --binutils 2.17 --gcc 3.4.6-r2 |
31 |
> > --kernel 2.6.19-r2 --libc 0.9.28.3 --ex-gdb --target |
32 |
> > arm-softfloat-linux-uclibc |
33 |
> |
34 |
> before you tried this command, did you delete the old attempt? eg |
35 |
> |
36 |
> crossdev -C arm-softfloat-linux-uclibc |
37 |
> |
38 |
> Chances are you have stale uclibc files installed from a previous |
39 |
> attempt that are conflicting with the current attempt. |
40 |
You are correct, unmerging the gcc did the trick. |
41 |
> |
42 |
> Also, make sure you unset PORTAGE_CONFIGROOT, CTARGET, CHOST, and |
43 |
> CBUILD. Those may foul up crossdev (You're not cross-compiling a |
44 |
> cross-compiling toolchain are you?). Those variable assignments are for |
45 |
> _after_ the toolchain is built when you want to use it. |
46 |
|
47 |
I'm a bit confused. I had those defined while crossdev was running. It |
48 |
might explain some of the problems I've had. |
49 |
>From your description, it appears generating the toolset is SIMPLER than |
50 |
I thought. |
51 |
|
52 |
Just to be clear; I am executing the following, is it OK? |
53 |
|
54 |
-.-.-.-.-.-.-.-.-.-.-.-.- |
55 |
SYSROOT="/usr/arm-softfloat-linux-uclibc" |
56 |
UCLIBC_CPU="ARM920T" USE="-*" crossdev -v -S --gcc 3.4.6-r2 --ex-gdb |
57 |
--target arm-softfloat-linux-uclibc |
58 |
|
59 |
-.-.-.-.-.-.-.-.-.-.-.-.- |
60 |
|
61 |
Apart from having to create an empty |
62 |
$SYSROOT/usr/include/asm/page.h |
63 |
the toolchain builds. |
64 |
|
65 |
I came to a erroneous conclusion of setting CBUILD, CHOST, CTARGET and |
66 |
PORTAGE_CONFIGROOT during crossdev execution from (mis)reading this |
67 |
documentation: |
68 |
http://www.gentoo.org/proj/en/base/embedded/cross-development.xml |
69 |
|
70 |
Is this document out of date? It mentions setting the ROOT variable, but |
71 |
crossdev complained that ROOT was not supported... Maybe ROOT is not |
72 |
intended to be used with crossedev, in which case it's another |
73 |
misunderstanding on my part. |
74 |
|
75 |
Is there a document I should read that might help? |
76 |
|
77 |
Thank you very much for your help, Jason. |
78 |
|
79 |
PS - About the top-posting, it was a mistake on my part, thanks to those |
80 |
who pointed it out. |
81 |
|
82 |
|
83 |
-- |
84 |
gentoo-embedded@g.o mailing list |