Re: Compiling an embedded driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


On Thu, Mar 5, 2009 at 4:43 AM, Matthias Kaehlcke <matthias@xxxxxxxxxxxx> wrote:
> El Thu, Mar 05, 2009 at 12:10:48PM +0100 Roger ha dit:
>
>> I am rather new to Linux and I am trying
>> to create a driver for my embedded
>> Artila Matrix-512 system.
>> As a start I want to compile the example
>> 'Hello' from the book 'Linux Device Drivers'
>> (O'Reilly).
>> My developing system is Linux Centos 5.2 and
>> I have installed the Matrix-512 source.
>> I have managed to compile and run the 'Hello' example
>> for Centos.
>> Could someone, please, give me some guidence here.
>
> as your target is an ARM processor you need a ARM cross-compilation
> toolchain.
>
> you can download such a toolchain from several places, a popular one
> is http://www.codesourcery.com/sgpp/lite/arm. you could also build one
> yourself using a framework like crosstool-ng
> (http://ymorin.is-a-geek.org/dokuwiki/projects/crosstool), though this
> is an advanced option.
> have a look at http://elinux.org/Toolchains for a fairly complete list
>
> if there is already a linux system running on your target system i
> recommend you to start with the toolchain supplied by the board
> vendor. otherwise it is very likely that your binary will not execute
> on your target.
>
> if you can afford it i recommend you the purchase of one of the
> following books:
>
> Building Embedded Linux Systems (ISBN 978-0596529680)
> Embedded Linux Primer (ISBN 978-0131679849)
>
> the embedded linux wiki at http://elinux.org is also a good starting
> point
>
> happy hacking!
>
> --
> Matthias Kaehlcke
> Embedded Linux Engineer
> Barcelona
>
>     La guerra es un acto abominable en el que se matan personas que no
>      se conocen, dirigidas por personas que se conocen y no se matan
>                                                                 .''`.
>    using free software / Debian GNU/Linux | http://debian.org  : :'  :
>                                                                `. `'`
> gpg --keyserver pgp.mit.edu --recv-keys 47D8E5D4                  `-
>
> -------------------------------------------------------------------
> List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
> FAQ:        http://www.arm.linux.org.uk/mailinglists/faq.php
> Etiquette:  http://www.arm.linux.org.uk/mailinglists/etiquette.php
>

Roger,

You've got good advise so far. I would just add a couple of things.
Really you want to be able to build the kernel for your board. This
isn't technically required as you could just get by with the headers,
but I think it will make a lot more sense if you start with building
the kernel, here are some simple steps for doing that with a
cross-compiler (http://opencircuits.com/Linuxstamp#Building_the_Linux_Kernel).
Then all of the tutorials for native compiling a kernel module can be
applied in the same way.

thanks,
Paul

-------------------------------------------------------------------
List admin: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm
FAQ:        http://www.arm.linux.org.uk/mailinglists/faq.php
Etiquette:  http://www.arm.linux.org.uk/mailinglists/etiquette.php


[Linux ARM]     [Linux ARM MSM]     [Linux ARM Kernel]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

Add to Google Follow linuxarm on Twitter