This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
RE: how to build an eCos library for ARM7tdmi simulator
- From: Scott Dattalo <scott at dattalo dot com>
- Cc: ecos-discuss at sources dot redhat dot com
- Date: Thu, 29 Aug 2002 04:53:24 -0700 (PDT)
- Subject: RE: [ECOS] how to build an eCos library for ARM7tdmi simulator
On Thu, 29 Aug 2002, Robert Cragie wrote:
> I have started to use SID (http://sources.redhat.com/sid). This emulates
> complete target hardware systems, e.g. the ARM PID, which is based on an
> ARM7T. Additional components can be added and the SID configuration file
> changed to emulate virtually any target hardware. It is also open source.
>
> With a bit of tweaking, I have managed to get a program similar to
> 'twothreads.c' to successfully run on the SID pid7t target using the full
> eCos environment and using GDB (Insight) to download and debug the program.
> I can provide details of what I had to do if you're interested; note however
> that I am using Linux as the host OS, so I cannot give you any help for
> Windows, but in theory it should be able to run with cygwin.
I've done the same thing as Robert. I ported my whole application - ~6Megs
worth - to an ARM and simulated with SID. I then used arm-elf-gprof to
optimize it!
My development setup went something like this:
-- start with a completed application (that happened to be mostly POSIX
compatible).
-- modified it to compile under Linux.
-- debugged it under Linux
-- modified it to compile with the arm-elf tool chain. The differences
between the desktop Linux and ARM versions were demarcated with #defines
-- debugged it under arm-elf-gdb targetting both the simulator and SID.
At this point I had one application and two makefile's. I could debug the
application in either enviroment. In fact, several times I had DDD and
Insight running side-by-side each single stepping through the same chunk
of code! This proved invaluable (for example a "char" declaration is
default signed in Linux's gcc but unsigned in the arm-elf-gcc).
Now I'm moving over to REAL hardware. I've got Redboot on my hacked EB40
which enables to me debug through the serial port. I can do the same as
before except instead of simulating I run the real thing!
I realize this I'm answering more than you asked... but a positive
testimony is always encouraging! Oh - and this list is an invaluable
resource.
Scott
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss