Thank you for your answer. but the problem is that I can't really change of compiler. I am using m5sim to precisely simulate the executable obtained with this compiler (arm-elf-gcc v.4.2.2). I checked and it supports the EABI.
After some research I made today, I think the problem is more than the target code is not meant to run on Linux but rather on bare metal. Does that mean I will have to deal with the Full System implementation ARM_FS (which does not yet exist) ? I'm still confused with the steps made by m5sim at the beginning of the simulation and in particular the loading of the executable specified as 'workload' of the cpu in the pyhton config file. Is this the write way to specify the software I want to run on the CPU ? Is there an hidden bootloader somewhere ? Does the SE mode boot a Linux and then launch the 'workload' as a standard process ? I have had a hard time finding these information on the wiki or the web. ----- Original Message ----- From: "Ali Saidi" <sa...@umich.edu> To: "M5 users mailing list" <m5-users@m5sim.org> Sent: Wednesday, July 21, 2010 4:44:41 PM GMT +01:00 Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna Subject: Re: [m5-users] Simulating software with ARM_SE The compiler you compiled your executable with is too old. You need to use an compiler that supports the EABI. This one should do the trick: http://www.codesourcery.com/sgpp/lite/arm/portal/release1293 Ali On Wed, 21 Jul 2010 09:53:54 +0200 (CEST), françois-xavier morel <fxmo...@sequans.com> wrote: > Hi, > > I'm trying to simulate an ARM environment with m5sim (I got the version > from the dev mercurial repository) and I stumble accross a problem of > OS/ABI. > Here is what I get when I try to run the simple 'se.py' with my executable > "test" : > > > $ ./m5.debug ../../configs/example/se.py -c ~/Desktop/brouillon/test > M5 Simulator System > > Copyright (c) 2001-2008 > The Regents of The University of Michigan > All Rights Reserved > > > M5 compiled Jul 20 2010 15:20:05 > M5 revision b543b8e5fcbc+ 7500+ default tip > M5 started Jul 21 2010 09:42:13 > M5 executing on rantanplan > command line: ./m5.debug ../../configs/example/se.py -c > /home/fxmorel/Desktop/brouillon/test > Global frequency set at 1000000000000 ticks per second > fatal: M5 does not support ARM OABI binaries. Please recompile with an > EABI compiler. > @ cycle 0 > [create:build/ARM_SE/sim/process.cc, line 703] > Memory Usage: 543084 KBytes > For more information see: http://www.m5sim.org/fatal/8f5870d1 > [1] 12832 exit 1 ./m5.debug ../../configs/example/se.py -c > ~/Desktop/brouillon/test > > As the repository contains an already compiled exectuable for arm > ("hello", which runs correctly), I compared the elf headers (with readelf > -h) of both file. > And the OS/ABI field is indeed different. > > For the given "hello", it goes : > OS/ABI: UNIX - System V > > And for my "test" : > OS/ABI: ARM > > > Why can't m5sim run a executable targeted for ARM ? What needs to be > changed to get this working ? > I'm still very new to m5sim, so it's possible i got something really wrong. > > Thank you in advance. > > François-Xavier MOREL > _______________________________________________ > m5-users mailing list > m5-users@m5sim.org > http://m5sim.org/cgi-bin/mailman/listinfo/m5-users _______________________________________________ m5-users mailing list m5-users@m5sim.org http://m5sim.org/cgi-bin/mailman/listinfo/m5-users _______________________________________________ m5-users mailing list m5-users@m5sim.org http://m5sim.org/cgi-bin/mailman/listinfo/m5-users