Kernel compile problem: get_rtc_time

Posted by: rlaxton

Kernel compile problem: get_rtc_time - 05/05/2002 04:41

Hi,

I successfully put an ARM toolchain together this weekend by following the instructions in the FAQ. I then downloaded the Hijack kernel to compile, applied all patches and compiled.

The first problem was the lack of information on exactly what to compile in and what not to. I think that I have got most of it right and my .config file is attached.

Unfortunately the compile stops after a time with the following error on final linking:

arm-empeg-linux-ld -p -X -T arch/arm/vmlinux.lds arch/arm/kernel/head-armv.o arch/arm/kernel/init_task.o init/main.o init/version.o \
--start-group \
arch/arm/kernel/kernel.o arch/arm/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o ipc/ipc.o \
fs/filesystems.a \
net/network.a \
drivers/block/block.a drivers/char/char.a drivers/misc/misc.a drivers/net/net.a drivers/net/irda/irda_drivers.a arch/arm/special/special.a \
arch/arm/nwfpe/math-emu.a arch/arm/lib/lib.o arch/arm/lib/lib.a /home/richard/linux-v2.00b11/lib/lib.a /usr/local/armtools/lib/gcc-lib/arm-empeg-linux/2.95.3/libgcc.a \
--end-group \
-o vmlinux
drivers/char/char.a(rtc.o): In function `get_rtc_time':
rtc.o(.text+0x10ac): multiple definition of `get_rtc_time'
arch/arm/kernel/kernel.o(.text+0x5dcc): first defined here
arm-empeg-linux-ld: Warning: size of symbol `get_rtc_time' changed from 608 to 568 in rtc.o
make: *** [vmlinux] Error 1

Does anyone have any ideas? I have looked around at get_rtc_time and it does look a little strange since in one place it is declared void and the other unsigned long but am not sure what is right.

Thanks for the help!

Richard.

P.S. The empeg is the best car stereo ever!
Posted by: rlaxton

Re: Kernel compile problem: get_rtc_time - 05/05/2002 05:38

OK, so I got the kernel to compile. I renamed the get_rtc_time function in drivers/char/rtc.c but now I have another problem. The system will not boot my zImage after I uploaded it into the player. I get:

Calling linux kernel...
(data abort vector)

Help!
Posted by: genixia

Re: Kernel compile problem: get_rtc_time - 05/05/2002 05:56

You shouldn't need to do that much to the .config and I'm sure that is the problem.

There are a couple of config files in arch/arm/def-configs, empeg-car (Mk1) and empeg-car2 (Mk2/Mk2a). Copy the required one to $KERNEL_ROOT/.config (where $KERNEL_ROOT is the root of your kernel) and then type "make oldconfig". Hit enter for the one and only question that it asks you. Then type "make dep; make clean". You then need to build a compressed image - "make zImage", and you should then be good to go.

Posted by: rlaxton

Re: Kernel compile problem: get_rtc_time - 05/05/2002 06:13

Thanks, trying that now. I figured that there would have to be default configs somewhere... never though to look in the normal tree!

I will report back. Next step is to write the RioCar side of my in car data acquisition system. I am already well on my way using an AVR AT90S4433 microcontroller.
Posted by: Shonky

Re: Kernel compile problem: get_rtc_time - 05/05/2002 22:32

You shouldn't have to change anything. Try my destructions that I gave here
Posted by: WirelessOne

Re: Kernel compile problem: get_rtc_time - 06/05/2002 09:03

The instruction by Shonky worked like a champ for me. You don't need to do any edits to anything. See this post for a few scripts that will get you all of the files you need (including the precompiled toolchain, kernel source, hijack and other patches) and take you through a successful kernel build using the files and steps indicated by Shonky. If nothing else, they at least illustrate the process. It's up to you to take it from there. This process should be more clearly laid out in the FAQ so folks don't have to keep asking about it.


Have fun,

Steve