LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (http://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   uClinux ARM-ELF Toolchain Building Procedure (http://www.linuxquestions.org/questions/linux-newbie-8/uclinux-arm-elf-toolchain-building-procedure-766119/)

vinchipsathya 11-01-2009 11:50 PM

uClinux ARM-ELF Toolchain Building Procedure
 
Hi Friends,

I am trying to build the latest version (gcc 4.3.2, binutils-2.19, etc..) arm-elf toolchain to build the image for uClinux distribution package "uClinux-dist-20040408.tar.gz". I am not able to get the exact build procedure with appropriate options.

So i started my research in the following way..

In web, i found arm-elf toolchain binaries "arm-elf-tools-20040427.sh". But no where, they talk about the building procedure.

In another link "http://www.uclinux.org/~bkuhn/Toolch...f-0.9.5-2.spec", they describe the procedure for arm-elf tool chain. Using that, i was able to build that, but while compiling the uClinux-dist package i got assemble error.

Then i noticed that, binutils and linux kernel versions are not same as that in the arm-elf-tool-20040427.sh binary script.

So i downloaded the right packages from the web and followed the building procedure in the earlier link. I faced some header file inclusion error in the uClibc compilation. That has been sorted out by modifying the Makefile appropriately. Finally i got the arm-elf tool chain, that compile uClinux-dist package successfully and i got the linux and romfs images.

While execute the image in ARMulator (gdb5.0) i got the following error.


++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ttyS0 at 0xfffd0000 (irq = 2) is a builtin Atmel APB USART
ttyS1 at 0xfffcc000 (irq = 3) is a builtin Atmel APB USART
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
RAMDISK: romfs filesystem found at block 0
RAMDISK: Loading 759 blocks [1 disk] into ram disk... done.
VFS: Mounted root (romfs filesystem) readonly.
Freeing init memory: 44K
BINFMT_FLAT: reloc outside program 0x9023adc (0 - 0xffed42fc/0x7580), killing init!
BINFMT_FLAT: reloc outside program 0x9023adc (0 - 0xffed42fc/0x7580), killing init!
BINFMT_FLAT: reloc outside program 0x2e312e31 (0 - 0x129788/0x12730), killing sh!
Kernel panic: No init found. Try passing init= option to kernel.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Please suggest me, where i went wrong. The only changes i made in the arm-elf tool chain (instead of using binaries, i built myself), other than that uClinux-dist and ARMulator are not modified. I am following the below link for reference.

http://opensrc.sec.samsung.com/Getti...nuxARM2_6.html

Thanks in advance,
Sathya Sankar.D

WildPossum 11-02-2009 06:28 PM

I suggest you look at the follwoing sites, which clarify your issues.

http://buildroot.uclibc.org/buildroo...sing_toolchain
http://wiki.openembedded.net/index.php/Getting_started
http://wiki.chumby.com/mediawiki/ind.../GNU_Toolchain
http://iomem.com/archives/2-Running-...nder-QEMU.html

Hope these help you.

Cheers.


All times are GMT -5. The time now is 10:00 AM.