Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Any advices cross-compiling for ARM on x86_64?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on Alternative Architectures
View previous topic :: View next topic  
Author Message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Oct 02, 2009 12:16 pm    Post subject: Any advices cross-compiling for ARM on x86_64? Reply with quote

Hi.

I'm desperately trying to initialize a cross-development environment for ARM (little endian and it's an ARM926E-J) on my laptop, a Core2 Duo (x86_64). I'd like to build uclibc instead of glibc for an embedded system, a Synology DS107+. I've tried
Code:
crossdev -S -t arm-unknown-linux-uclibc --gcc 4.1.2
and
Code:
crossdev -S -t arm-unknown-linux-uclibc --gcc 3.4.6
both fail, the former on uclibc the latter on GCC.

crossdev -S -t arm-unknown-linux-uclibc --gcc 4.1.2
/var/log/portage/cross-arm-unknown-linux-uclibc-uclibc.log:
...
gen_collate.c:3638: warning: unused variable 'j'
gen_collate.c: In function 'add_range_rule':
gen_collate.c:3715: warning: unused variable 'j'
gen_collate.c: In function 'dump_collate':
gen_collate.c:3872: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3873: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3875: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3876: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3877: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3878: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3879: warning: format '%10d' expects type 'int', but argument 3 has type 'size_t'
gen_collate.c:3939: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int'
gen_wc8bit.c: In function 'main':
gen_wc8bit.c:462: warning: pointer targets in assignment differ in signedness
gen_wc8bit.c:613: warning: pointer targets in assignment differ in signedness
gen_collate.c: At top level:
gen_collate.c:3792: warning: 'dump_base_locale' defined but not used
gen_collate.c:3828: warning: 'dump_der_locale' defined but not used
gen_collate.c:850: warning: 'print_colnode' defined but not used
gen_collate.c:2584: warning: 'print_starter_node' defined but not used
gen_collate.c:3248: warning: 'print_starter_all_node' defined but not used
gen_wctype.c: In function 'main':
gen_wctype.c:203: warning: 'combtable.ii_len' may be used uninitialized in this function
gen_wctype.c:234: note: 'combtable.ii_len' was declared here
gen_wctype.c:203: warning: 'combtable.ti_len' may be used uninitialized in this function
gen_wctype.c:234: note: 'combtable.ti_len' was declared here
gen_wctype.c:203: warning: 'combtable.ut_len' may be used uninitialized in this function
gen_wctype.c:234: note: 'combtable.ut_len' was declared here
gen_wctype.c:203: warning: 'combtable.ti_shift' may be used uninitialized in this function
gen_wctype.c:234: note: 'combtable.ti_shift' was declared here
gen_wctype.c:203: warning: 'combtable.ii_shift' may be used uninitialized in this function
gen_wctype.c:234: note: 'combtable.ii_shift' was declared here
gen_wctype.c:648: warning: 'i1' may be used uninitialized in this function
gen_wctype.c:648: warning: 'i0' may be used uninitialized in this function
gen_wctype.c:647: warning: 'sc' may be used uninitialized in this function
gen_wctype.c:647: warning: 'n' may be used uninitialized in this function
gen_wc8bit.c:351: warning: array subscript is above array bounds
gen_wc8bit.c:410: warning: array subscript is above array bounds
gen_wc8bit.c:476: warning: array subscript is above array bounds
./gen_wctype en_US
typecount[ 0] =    91456  C_unclassified
typecount[ 1] =    91229  C_alpha_nonupper_nonlower
typecount[ 2] =      928  C_alpha_lower
typecount[ 3] =        4  C_alpha_upper_lower
typecount[ 4] =      918  C_alpha_upper
typecount[ 5] =       10  C_digit
typecount[ 6] =    11980  C_punct
typecount[ 7] =        1  C_graph
typecount[ 8] =        0  C_print_space_nonblank
typecount[ 9] =       15  C_print_space_blank
typecount[10] =        0  C_space_nonblank_noncntrl
typecount[11] =        0  C_space_blank_noncntrl
typecount[12] =        6  C_cntrl_space_nonblank
typecount[13] =        1  C_cntrl_space_blank
typecount[14] =       60  C_cntrl_nonspace
typecount[15] =        0  empty_slot
optimizing is* table..
ishift 1  tshift 0  size 49462
ishift 5  tshift 0  size 9606
ishift 6  tshift 0  size 9510
ishift 4  tshift 1  size 6592
ishift 5  tshift 1  size 5776
ishift 1  tshift 5  size 8280
ishift 2  tshift 5  size 7568
ishift 3  tshift 5  size 7288
ishift 4  tshift 5  size 7200
ishift 1  tshift 6  size 8856
ishift 2  tshift 6  size 8524
ishift 3  tshift 6  size 8384
ishift 4  tshift 6  size 8384
ishift 1  tshift 7  size 10214
ishift 2  tshift 7  size 10048
ishift 3  tshift 7  size 10000
ishift 1  tshift 8  size 13312
ishift 2  tshift 8  size 13240
ishift 3  tshift 8  size 13240
ishift 1  tshift 9  size 16524
ishift 2  tshift 9  size 16500
ishift 1  tshift 10  size 22610
ishift 2  tshift 10  size 22608
smallest = 5776
setting ishift 5  tshift 1
make: *** [wctables.h] Bus error
make: *** Waiting for unfinished jobs....

Bus error? Huh?

crossdev -S -t arm-unknown-linux-uclibc --gcc 3.4.6
/var/log/portage/cross-arm-unknown-linux-uclibc-gcc-stage1.log:
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:85: Error: no such instruction: `moveq pc,lr'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:86: Error: no such instruction: `ldr r3,.L14+4'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:87: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:88: Error: no such instruction: `moveq pc,lr'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:89: Error: no such instruction: `b _Jv_RegisterClasses'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:98: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:99: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:100: Error: invalid char '[' beginning operand 2 `[sp'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:102: Error: no such instruction: `bl frame_dummy'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccBUJIg5.s:104: Error: no such instruction: `ldr pc,[sp],'
In file included from tconfig.h:23,
                 from /var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/crtstuff.c:61:
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/config/arm/linux-elf.h:54:1: warning: "SUBTARGET_CPU_DEFAULT" redefined
In file included from tconfig.h:18,
                 from /var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/crtstuff.c:61:
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/work/gcc-3.3.6/gcc/config/arm/unknown-elf.h:94:1: warning: this is the location of the previous definition
make[1]: *** [crtbegin.o] Error 1
make[1]: *** Waiting for unfinished jobs....
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s: Assembler messages:
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:26: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:27: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:28: Error: no such instruction: `stmfd sp!,{r4,lr}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:29: Error: no such instruction: `ldr r3,.L9'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:30: Error: no such instruction: `ldr r2,[r3,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:31: Error: no such instruction: `cmn r2,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:32: Error: too many memory references for `sub'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:33: Error: no such instruction: `ldmeqfd sp!,{r4,pc}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:34: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:36: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:37: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:38: Error: no such instruction: `ldr r3,[r4,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:39: Error: no such instruction: `cmn r3,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:40: Error: no such instruction: `bne .L6'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:41: Error: no such instruction: `ldmfd sp!,{r4,pc}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:49: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:50: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:51: Error: invalid char '[' beginning operand 2 `[sp'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:53: Error: no such instruction: `bl __do_global_ctors_aux'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccVKyuu5.s:55: Error: no such instruction: `ldr pc,[sp],'
make[1]: *** [crtend.o] Error 1
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s: Assembler messages:
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:35: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:36: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:37: Error: no such instruction: `stmfd sp!,{r4,r5,sl,lr}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:38: Error: no such instruction: `ldr sl,.L11'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:39: Error: no such instruction: `ldr r5,.L11+4'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:41: Error: too many memory references for `add'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:42: Error: no such instruction: `ldrb r3,[sl,r5]@zero_extendqisi2'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:43: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:44: Error: no such instruction: `ldmnefd sp!,{r4,r5,sl,pc}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:45: Error: no such instruction: `ldr r3,.L11+8'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:46: Error: no such instruction: `ldr r2,[sl,r3]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:47: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:48: Error: no such instruction: `ldrne r3,.L11+12'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:49: Error: no such instruction: `ldrne r0,[sl,r3]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:50: Error: no such instruction: `movne lr,pc'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:51: Error: no such instruction: `movne pc,r2'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:53: Error: no such instruction: `ldr r4,.L11+16'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:54: Error: no such instruction: `ldr r3,[sl,r4]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:55: Error: no such instruction: `ldr r2,[r3,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:56: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:57: Error: no such instruction: `beq .L10'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:59: Error: too many memory references for `add'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:60: Error: invalid char '[' beginning operand 2 `[sl'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:61: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:62: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:63: Error: no such instruction: `ldr r3,[sl,r4]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:64: Error: no such instruction: `ldr r2,[r3,'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:65: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:66: Error: no such instruction: `bne .L7'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:68: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:69: Error: invalid char '[' beginning operand 2 `[sl'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:70: Error: no such instruction: `ldmfd sp!,{r4,r5,sl,pc}'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:75: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:76: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:77: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:78: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:82: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:83: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:84: Error: invalid char '[' beginning operand 2 `[sp'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:86: Error: no such instruction: `bl __do_global_dtors_aux(PLT)'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:88: Error: no such instruction: `ldr pc,[sp],'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:92: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:93: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:94: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:95: Error: invalid char '[' beginning operand 2 `[sp'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:96: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:97: Error: no such instruction: `ldr sl,.L17'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:98: Error: no such instruction: `ldr r2,.L17+4'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:100: Error: too many memory references for `add'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:101: Error: no such instruction: `ldr r3,[sl,r2]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:102: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:103: Error: too many memory references for `add'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:104: Error: no such instruction: `beq .L14'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:105: Error: no such instruction: `ldr r3,.L17+8'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:106: Error: no such instruction: `ldr r2,[sl,r3]'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:107: Error: expecting operand after ','; got nothing
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:108: Error: no such instruction: `beq .L14'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:109: Error: no such instruction: `ldr sl,[sp],'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:110: Error: no such instruction: `b _Jv_RegisterClasses(PLT)'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:112: Error: no such instruction: `ldr sl,[sp],'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:113: Error: too many memory references for `mov'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:118: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:119: Error: junk at end of line, first unrecognized character is `('
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:123: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:124: Error: junk at end of line, first unrecognized character is `@'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:125: Error: invalid char '[' beginning operand 2 `[sp'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:127: Error: no such instruction: `bl frame_dummy(PLT)'
/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/temp/ccIe2Ph5.s:129: Error: no such instruction: `ldr pc,[sp],'
make[1]: *** [crtbeginS.o] Error 1
make[1]: Leaving directory `/var/tmp/cross/arm-unknown-linux-uclibc/portage/cross-arm-unknown-linux-uclibc/gcc-3.3.6-r1/work/build/gcc'
make: *** [all-gcc] Error 2

Is there anything I should do? Have I missed something?

Note I tried the former command on my home desktop machine and I also got the "Bus error" message. I don't know if that's the reason but my computer hung upon shutting down and it rebooted by itself in the middle of the filecheck that followed... I'm not sure I lost anything but I'll double check today.

Thanks in advance for your lights
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Oct 02, 2009 12:58 pm    Post subject: Reply with quote

Okay, friends, I dropped the -S argument and ran the following command:
Code:
crossdev -t arm-unknown-linux-uclibc --gcc 3.4.6-r2

That worked!
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
gringo
Advocate
Advocate


Joined: 27 Apr 2003
Posts: 3793

PostPosted: Fri Oct 02, 2009 1:13 pm    Post subject: Reply with quote

be sure to also install crossdev-wrappers which will give you emerge-$CTARGET among other stuff.
Really nice tool IMO.

cheers
_________________
Error: Failing not supported by current locale
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Fri Oct 02, 2009 2:30 pm    Post subject: Reply with quote

Thanks for the hint!

EDIT: BTW I'm not sure at all about floating point support of the target CPU... Here's cpuinfo:
cat /proc/cpuinfo:
Processor   : ARM926EJ-Sid(wb) rev 0 (v5l)
BogoMIPS   : 499.71
Features   : swp half thumb fastmult vfp edsp
CPU implementer   : 0x41
CPU architecture: 5TEJ
CPU variant   : 0x0
CPU part   : 0x926
CPU revision   : 0
Cache type   : write-back
Cache clean   : cp15 c7 ops
Cache lockdown   : format C
Cache format   : Harvard
I size      : 32768
I assoc      : 1
I line length   : 32
I sets      : 1024
D size      : 32768
D assoc      : 4
D line length   : 32
D sets      : 256

Hardware   : MV-88fxx81
Revision   : 0000
Serial      : 0000000000000000

Should I select softfloat or not?

EDIT: I think yes, I have to use softfloat as it looks like this CPU has no floating point support.

EDIT: After all, it looks like this CPU *does* have floating point support!
http://www.arm.com/products/CPUs/architecture.html wrote:
Vector Floating Point (VFP)
Vector Floating Point (VFP) coprocessor support is an architecture option. The VFP architecture supports single and double precision floating point arithmetic, and is fully IEEE 754 compliant with suitable software library support. The VFP architecture also includes a fully deterministic ‘Run fast Mode’.

Provision of a hardware floating point is essential for many applications, and can be used as part of a System on Chip (SoC) design flow using technical computing tools (eg MatLab® and MATRIXx®) to directly model the system and derive the application code. The vector processing capability of the ARM VFP can be used to increase performance of imaging applications such as scaling, 2D and 3D transforms, font generation, and digital filters.

ARM currently has VFP support for the ARM9™, ARM10™ and ARM11™ processor families: VFP9-S™ and VFP10™. Additional VFP options, VFPv3, were introduced with the ARMv7 architecture.

_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
baobab88
n00b
n00b


Joined: 12 Mar 2004
Posts: 18
Location: Paris

PostPosted: Tue Nov 17, 2009 10:34 am    Post subject: Reply with quote

Don't cross compile !

Use Qemu with the versatilepb architecture, load gentoo inside and then compile whatever you want using native compilation.
The cross compilation for ARM doesn't work very well. A lot of packages do crashes or link with 64bit libraries.
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Tue Nov 17, 2009 11:03 am    Post subject: Reply with quote

baobab88 wrote:
Don't cross compile !

I feared that...
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
spielc
Guru
Guru


Joined: 20 Apr 2004
Posts: 452

PostPosted: Sun Nov 29, 2009 2:07 pm    Post subject: Reply with quote

baobab88 wrote:
Don't cross compile !

Use Qemu with the versatilepb architecture, load gentoo inside and then compile whatever you want using native compilation.
The cross compilation for ARM doesn't work very well. A lot of packages do crashes or link with 64bit libraries.


That's only partly true. I use my x86_64 with crossdev to cross-compile stuff for my openmoko freerunner and MOST of the things work and compile like a charm. There will always be some black sheep that won't work out of the box but i can compile and run 90 % of the cross-compiled things without any problems. If i would be you i would not use qemu and use a properly installed and setup crossdev environment. Have a look here, on directions on how to properly set up a crossdev environment
_________________
Raise your beers up high...
Back to top
View user's profile Send private message
VinzC
Watchman
Watchman


Joined: 17 Apr 2004
Posts: 5098
Location: Dark side of the mood

PostPosted: Sun Nov 29, 2009 6:08 pm    Post subject: Reply with quote

spielc wrote:
Have a look here, on directions on how to properly set up a crossdev environment


Thanks for the link.
_________________
Gentoo addict: tomorrow I quit, I promise!... Just one more emerge...
1739!
Back to top
View user's profile Send private message
rayjchris
n00b
n00b


Joined: 19 Nov 2009
Posts: 5
Location: UK

PostPosted: Thu Dec 03, 2009 2:51 pm    Post subject: Distcc cross compiling for arm cpu Reply with quote

Hi, i've setup distcc on 4 computers all running the AMD64 version of gentoo. These computers will quite happily make use of distcc to compile packages etc but what I want to do now is compile a arm kernel using the machines available to me in distcc.

I've followed this guide up to where it starts to create links:

http://www.gentoo.org/doc/en/cross-compiling-distcc.xml

# chmod a+x sparc-unknown-linux-gnu-wrapper
# ln -s sparc-unknown-linux-gnu-wrapper cc
# ln -s sparc-unknown-linux-gnu-wrapper gcc
# ln -s sparc-unknown-linux-gnu-wrapper g++
# ln -s sparc-unknown-linux-gnu-wrapper c++

I'm guessing in my case it would be:

ln -s amd64-unknown-linux-gnu-wrapper cc

and so on but I don't understand how this helps when I want to compile for my arm cpu surely this will just pass references to amd64 gcc compilers?

I have emerged crossdev -t arm on all the boxes.

hopefully someone out there can set me back on the right path....
Back to top
View user's profile Send private message
Jaglover
Watchman
Watchman


Joined: 29 May 2005
Posts: 8291
Location: Saint Amant, Acadiana

PostPosted: Thu Dec 03, 2009 2:57 pm    Post subject: Reply with quote

It will grab the compiler name from the wrapper and pass it to helper boxes, meaning cross-compiler with required name will be used instead of native. The wrapper script is really required only in case something in your ARM box calls gcc instead of arm-unknown-linux-gnu-gcc (or whatever the long compiler name is).

Last edited by Jaglover on Thu Dec 03, 2009 3:08 pm; edited 1 time in total
Back to top
View user's profile Send private message
rayjchris
n00b
n00b


Joined: 19 Nov 2009
Posts: 5
Location: UK

PostPosted: Thu Dec 03, 2009 3:08 pm    Post subject: Reply with quote

does that mean I should also create theses?

ln -s arm-unknown-linux-gnu-wrapper cc
Back to top
View user's profile Send private message
Jaglover
Watchman
Watchman


Joined: 29 May 2005
Posts: 8291
Location: Saint Amant, Acadiana

PostPosted: Thu Dec 03, 2009 3:10 pm    Post subject: Reply with quote

You create this wrapper script in your ARM box
Code:
#!/bin/bash
exec /usr/lib/distcc/bin/arm-unknown-linux-gnu-g${0:$[-2]} "$@"

and point all four symlinks to it.
You do nothing in your helper boxes - besides building cross-compiler indeed.
Back to top
View user's profile Send private message
rayjchris
n00b
n00b


Joined: 19 Nov 2009
Posts: 5
Location: UK

PostPosted: Thu Dec 03, 2009 3:38 pm    Post subject: Reply with quote

I can't do that last step. At the moment I'm building every thing I need for the embedded arm device on one computer. Once the kernels finished compiling it contains the file system as a cpio archive. I then copy this over to the arm device type in a memory location and off it goes it starts booting.

To speed up this process I was wondering if it was possible to use the distcc I had setup on the other computers and get all the boxes involved with the compilation. At the moment the arm compiler i'm using is inside buildroot.

The arm device is not running gentoo it is simply a patched kernel and root file system
Back to top
View user's profile Send private message
nixnut
Bodhisattva
Bodhisattva


Joined: 09 Apr 2004
Posts: 10974
Location: the dutch mountains

PostPosted: Tue Dec 08, 2009 6:04 pm    Post subject: Reply with quote

merged above five posts here
_________________
Please add [solved] to the initial post's subject line if you feel your problem is resolved. Help answer the unanswered

talk is cheap. supply exceeds demand
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on Alternative Architectures All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum