linux-2.6.8 MIPS cross compile and cygwin

Kyle Unice unixe@comcast.net
Sat Sep 10 15:28:00 GMT 2005




After much help from Dan K. and Matej I got the toolchain working.  When I
build linux (under the crosstools/build directory with the patched
linux-2.6.8 sourceI get the following.  
$ !make
make ARCH=mips CROSS_COMPILE=mips-unknown-linux-gnu- vmlinux
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/split-include
  HOSTCC  scripts/basic/docproc
  HOSTLD  scripts/genksyms/genksyms
  HOSTCC  scripts/mod/mk_elfconfig
  MKELF   scripts/mod/elfconfig.h
  HOSTCC  scripts/mod/file2alias.o
  HOSTCC  scripts/mod/modpost.o
  HOSTCC  scripts/mod/sumversion.o
scripts/mod/sumversion.c: In function `md4_final_ascii':
scripts/mod/sumversion.c:250: warning: unsigned int format, long unsigned
int ar
g (arg 4)
scripts/mod/sumversion.c:250: warning: unsigned int format, long unsigned
int ar
g (arg 5)
scripts/mod/sumversion.c:250: warning: unsigned int format, long unsigned
int ar
g (arg 6)
scripts/mod/sumversion.c:250: warning: unsigned int format, long unsigned
int ar
g (arg 7)
  HOSTLD  scripts/mod/modpost
  HOSTCC  scripts/conmakehash
  HOSTCC  scripts/kallsyms
  HOSTCC  scripts/pnmtologo
  HOSTCC  scripts/bin2c
make[1]: `arch/mips/kernel/offset.asm' is up to date.
make[1]: `arch/mips/kernel/reg.asm' is up to date.
  CHK     include/linux/compile.h
  HOSTCC  usr/gen_init_cpio
  CPIO    usr/initramfs_data.cpio
  GZIP    usr/initramfs_data.cpio.gz
  AS      usr/initramfs_data.o
  LD      usr/built-in.o
  CC      arch/mips/kernel/time.o
arch/mips/kernel/time.c: In function `fixed_rate_gettimeoffset':
arch/mips/kernel/time.c:278: error: unknown register name `accum' in `asm'
arch/mips/kernel/time.c: In function `calibrate_div32_gettimeoffset':
arch/mips/kernel/time.c:333: error: unknown register name `accum' in `asm'
arch/mips/kernel/time.c: In function `calibrate_div64_gettimeoffset':
arch/mips/kernel/time.c:362: error: unknown register name `accum' in `asm'
arch/mips/kernel/time.c:389: error: unknown register name `accum' in `asm'
make[1]: *** [arch/mips/kernel/time.o] Error 1
make: *** [arch/mips/kernel] Error 2

I commented out the _asm for now and moved on then got this:

arch/mips/kernel/time.c: In function `calibrate_div64_gettimeoffset':
arch/mips/kernel/time.c:365: warning: unused variable `r0'
arch/mips/kernel/time.c: In function `fixed_rate_gettimeoffset':
arch/mips/kernel/time.c:270: warning: 'res' might be used uninitialized in
this
function
arch/mips/kernel/time.c: In function `calibrate_div32_gettimeoffset':
arch/mips/kernel/time.c:311: warning: 'res' might be used uninitialized in
this
function
arch/mips/kernel/time.c: In function `calibrate_div64_gettimeoffset':
arch/mips/kernel/time.c:355: warning: 'res' might be used uninitialized in
this
function
  CC      arch/mips/kernel/traps.o
In file included from arch/mips/kernel/traps.c:37:
include/asm/mmu_context.h: In function `switch_mm':
include/asm/mmu_context.h:129: warning: passing arg 2 of `clear_bit' from
incomp
atible pointer type
include/asm/mmu_context.h:130: warning: passing arg 2 of `set_bit' from
incompat
ible pointer type
include/asm/mmu_context.h: In function `activate_mm':
include/asm/mmu_context.h:164: warning: passing arg 2 of `clear_bit' from
incomp
atible pointer type
include/asm/mmu_context.h:165: warning: passing arg 2 of `set_bit' from
incompat
ible pointer type
include/asm/mmu_context.h: In function `drop_mmu_context':
include/asm/mmu_context.h:181: warning: passing arg 2 of `test_bit' from
incompa
tible pointer type
arch/mips/kernel/traps.c: In function `show_stack':
arch/mips/kernel/traps.c:97: warning: use of cast expressions as lvalues is
depr
ecated
  CC      arch/mips/kernel/unaligned.o
  CC      arch/mips/kernel/mips_ksyms.o
  CC      arch/mips/kernel/module.o
  CC      arch/mips/kernel/module-elf32.o
  AS      arch/mips/kernel/r4k_fpu.o
  AS      arch/mips/kernel/r4k_switch.o
  CC      arch/mips/kernel/irq_cpu.o
  CC      arch/mips/kernel/irq-rm7000.o
  AS      arch/mips/kernel/scall32-o32.o
arch/mips/kernel/scall32-o32.S: Assembler messages:
arch/mips/kernel/scall32-o32.S:649: Error: Macro with this name was already
defi
ned
make[1]: *** [arch/mips/kernel/scall32-o32.o] Error 1
make: *** [arch/mips/kernel] Error 2
 
I think I am missing a fundamental step in using linux for mips.. perhaps a
set of patches that should be applied before building linux...?  thx,

One other question:
If one wishes to add linux-2.6.13 ( or whatever is the current build of
linux ) to the crosstool build, is this a guru only type of effort or can we
copy the patches say from linux-2.6.11.3 and try them with 2.6.13?
 
Kyle
 



------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list