toolchain for mini2440

mosfet
Hi.

Does anybody can help me to establish a toolchain for mini2440 ?

I followed a description in Karmin's Yaghmour book, but I've got stucked on
building right toolchain. I cannot find version-set for toolchain
components which would be compatible with kernel I've got from
git://repo.or.cz/linux-2.6/mini2440.git. For now my experience is to low to
customize 'vanila' kernel fro mini2440, and I would like base on some
ready-made mini2440 kernel sources.


Regards, and many thanks for help.

davef
What about 2.6.32.2 on the downloads page?

mosfet
Thanks for repply.


It works fine, when build with ready-made toolchain. I followed tutorial
from:

http://wiki.linuxmce.org/index.php/Mini2440

and I'm happy owner of my onw-build nice working kernel. 

My next step was to build (with the toolchain from tutorial stated above)
busybox. It build with no error, but during the start, kernel reports error
with starting init. When I swapped filesystem to Angstrom distribution, it
started with several minor errors. But it isn't solution for me. I want to
build my onw busybox and to have working toolchain. It is for the start :) 

My 'dream' is to build application wich gathers weather report over i-net
and presents in on LCD :) But I'm far far away from it. On my current skill
level I would be happy of application printing "Hello" :p on my 'own'
kernel and busybox :)


regards,

davef
Have a look at the Linux tutorial on the wiki, especially at the BusyBox
part.  It is a static build, but worked for me.

Think there will be quite a bit more to printing Hello.  I got as far as
the tutorial, but couldn't work out how to how to get keyboard input to
navigate the file system on the target (could only use Minicom).  Then, you
have to deal with the frame buffer. I got lost. 

Good luck.

dlk289
I've been really busy as work lately and finally have a chance to mess
around with this.  I'm still running into problems.  
I've tried to follow the wiki.linuxmce..... tutorial you posted but when i
get to make all i get the error about the -gcc file missing.  The
directions say:

This will give you a "u-boot.bin". If you get an error about a missing
whatever-gcc, verifiy if there is a hardcoded CROSS_COMPILE setting in the
Makefile 

What does it mean by verify if there is a hardcoded CROSS_COMPILE...
I opened up the make file and found this dealing with the CROSS_COMPILE

ifndef CROSS_COMPILE
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE =
else
ifeq ($(ARCH),ppc)
CROSS_COMPILE = ppc_8xx-
endif
ifeq ($(ARCH),arm)
CROSS_COMPILE = arm-linux-
endif
ifeq ($(ARCH),i386)
CROSS_COMPILE = i386-linux-
endif
ifeq ($(ARCH),mips)
CROSS_COMPILE = mips_4KC-
endif
ifeq ($(ARCH),nios)
CROSS_COMPILE = nios-elf-
endif
ifeq ($(ARCH),nios2)
CROSS_COMPILE = nios2-elf-
endif
ifeq ($(ARCH),m68k)
CROSS_COMPILE = m68k-elf-
endif
ifeq ($(ARCH),microblaze)
CROSS_COMPILE = mb-
endif
ifeq ($(ARCH),blackfin)
CROSS_COMPILE = bfin-uclinux-
endif
ifeq ($(ARCH),avr32)
CROSS_COMPILE = avr32-linux-
endif
ifeq ($(ARCH),sh)
CROSS_COMPILE = sh4-linux-
endif  # sh
endif  # HOSTARCH,ARCH
endif  # CROSS_COMPILE

export  CROSS_COMPILE

Just a recap with what i've done so far.  I downloaded the toolchain
suggested in the tutorial.  I CD to the directory which i extracted the
file to and proceeded with the steps following the compiling uboot section.

Also, what does this mean?
Add the bin dir to the $PATH. If you have a toolchain with another prefix
(like arm-linux-) adapt the CROSS_COMPILE environment variable in the next
steps. 

Sorry for all the dumb questions and thanks so much for the help.

davef
<What does it mean by verify if there is a hardcoded CROSS_COMPILE...



I think it depends on the Linux distro you are running on the host, but for
me running Ubuntu 9.04
***
Place in .profile on your Linux host

    * export PATH=/home/user/mini2440-bootstrap/arm-2008q3/bin:$PATH 

    * CROSS_COMPILE=arm-none-linux-gnueabi-
    * CC=”${CROSS_COMPILE}gcc –march=armv4t –mtune=arm920t”
    * export CROSS_COMPILE
    * export CC 

Depending on permission’s sudo may be required on some commands. 
***

bin refers to the bin:$PATH above

Another way to do this is at the beginning of each compile session at the
command line enter:

CROSS_COMPILE=arm-none-linux-gnueabi- (enter)
CC=”${CROSS_COMPILE}gcc –march=armv4t –mtune=arm920t” (enter)
export CROSS_COMPILE (enter)
export CC (enter)

or write a script 

Good luck