Since the Raspberry Pi is due to be released soon, I wanted to play with it first using qemu.
There is a tutorial to do exactly that:
So far, I have not succeeded in building the kernel on my Linux Mint 11 (i386) system. After my first attempt, I started over from scratch and carefully followed each step but got the same results.
The first problem appeared to be due to the CROSS_COMPILE make variable being undefined:
cc1: error: unrecognized command line option "-mlittle-endian"
cc1: error: unrecognized command line option "-mapcs"
cc1: error: unrecognized command line option "-mno-sched-prolog"
kernel/bounds.c:1:0: error: unknown ABI (apcs-gnu) for -mabi= switch
Changing CROSS_COMPILE in the Makefile allows some compilation:
CROSS_COMPILE = arm-none-eabi-
(This is with my PATH setup to include the cross compiler.)
The next issue may be due to several warnings:
warning: "__LINUX_ARM_ARCH__" is not defined
which finally results in:
In file included from include/linux/mm_types.h:15:0,
/home/mark/edev/linux-3.0.4/arch/arm/include/asm/page.h: At top level:
/home/mark/edev/linux-3.0.4/arch/arm/include/asm/page.h:116:2: error: #error Unknown user operations model
Adding this definition to the Makefile eliminated the warnings but resulted in the same error:
KBUILD_CFLAGS_KERNEL := -D__LINUX_ARM_ARCH__=11
Starting over from scratch and following the instructions step by step, as closely as possible did not help.
I can reload the menuconfig configurations and verify the correct settings.
Can someone explain what I am doing wrong or suggest an alternative set of instructions?