Forums

MSPGCC to compile and IAR to link and other stuff

Started by gckir March 18, 2008
This is my first post in this community. i want to do my Masters
project using the MSP430 development tool.i am at a very preliminary
stage now.i want to use the mspgcc compiler to compile my code and then
use those obj files in the IAR IDE to link them and load in to the
MSP430. i want to do this coz , i want to compile code which is more
than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
the eZ430-RF2500 development tool.

has any one done like this before? can it be possible to do so ? any
other suggestions please!

Beginning Microcontrollers with the MSP430

gckir wrote:

> This is my first post in this community. i want to do my Masters
> project using the MSP430 development tool.i am at a very preliminary
> stage now.i want to use the mspgcc compiler to compile my code and then
> use those obj files in the IAR IDE to link them and load in to the
> MSP430. i want to do this coz , i want to compile code which is more
> than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
> the eZ430-RF2500 development tool.
>
> has any one done like this before? can it be possible to do so ? any
> other suggestions please!

Hi gckir,

Well, it will be an uphill battle:

* The object file format is different, the IAR tools use UBROF while GCC
doesn't (it probably uses ELF or COFF, I'm sure a helpful GCC user knows
the details).

* The calling convention is probably different. (E.g. the two systems
will pass parameters in different function.)

* The GCC header files are not compatible with the IAR library, and GCC
can't read the ones provided by IAR.

Sorry I don't have better news, but that is the way the situation is...

-- Anders Lindgren, IAR Systems
--
Disclaimer: Opinions expressed in this posting are strictly my own and
not necessarily those of my employer.

Even if you won the uphill battle Anders described, you still cannot
link more than 4KB of code. The Linker in KickStart has a 4KB limit.

--- Anders Lindgren wrote:
>
> gckir wrote:
>
> > This is my first post in this community. i want to do my
> > Masters project using the MSP430 development tool.i am at
> > a very preliminary stage now.i want to use the mspgcc
> > compiler to compile my code and then use those obj files
> > in the IAR IDE to link them and load in to the MSP430.
> > i want to do this coz , i want to compile code which is more
> > than 4kb. but my IAR compiler has limited 4kb c compiler.
> > i am using the eZ430-RF2500 development tool.
> >
> > has any one done like this before? can it be possible to do
> > so ? any other suggestions please!
>
> Hi gckir,
>
> Well, it will be an uphill battle:
>
> * The object file format is different, the IAR tools use UBROF
> while GCC doesn't (it probably uses ELF or COFF, I'm sure a
> helpful GCC user knows the details).
>
> * The calling convention is probably different. (E.g. the two
> systems will pass parameters in different function.)
>
> * The GCC header files are not compatible with the IAR library,
> and GCC can't read the ones provided by IAR.
>
> Sorry I don't have better news, but that is the way the
> situation is...
>
> -- Anders Lindgren, IAR Systems
> --
> Disclaimer: Opinions expressed in this posting are strictly
> my own and not necessarily those of my employer.
>

On Tue, Mar 18, 2008 at 11:49 AM, old_cow_yellow
wrote:
> Even if you won the uphill battle Anders described, you still cannot
> link more than 4KB of code. The Linker in KickStart has a 4KB limit.

What _exactly_ are the limitations of KickStart ? I've heard that
things can exceed 4K, under some circumstances.

I'm interested because I'd like to make an eval kit
for something that users could use with KickStart. This
would include pre-built object files (some of which
contain large-ish data arrays) will these count against
the 4K limit, or only the code, not the data, something
more complex ?

--
Andy

Howdy Anders and gckir,

The linker enforces the limit, so you'll need the GCC--not the
IAR--linker. Although it's possible, you'll never be able to do it for
less than the cost of an IAR license.

Anders Lindgren wrote:
> Hi gckir,
>
> Well, it will be an uphill battle:
>
> * The object file format is different, the IAR tools use UBROF while GCC
> doesn't (it probably uses ELF or COFF, I'm sure a helpful GCC user knows
> the details).
GCC uses ELF. IAR uses UBROF. A UBROF dumper is included with NoICE,
but it doesn't work with either the latest UBROF or the 4kb versions of
IAR. (I doubt the dumper works for un-linked objects, but you could
compile the IAR image and relink with some perl scripts.)

Once linked, msp430-objdump can convert the firmware ihex, which can be
uploaded with IAR's tools.
>
> * The calling convention is probably different. (E.g. the two systems
> will pass parameters in different function.)
GCC's calling convention--for 16-bit integer parameters--is to use r15,
r14, r13, r12 in that order, and to pass all subsequent parameters on
the stack. A return value is placed in r15.

IAR's convention in version 3 (of the compiler) was to use r12, r14 in
that order, and to pass all subsequent parameters on the stack.
IAR version 4 uses r12,r13,r14,r15 in that order, and passes all
subsequent parameters on the stack.
Both versions of IAR place return values in r12.

--
Travis Goodspeed
Extreme Measurement Communications Center
Oak Ridge National Laboratory
Oak Ridge, TN

Cell: 865.300.0094
AIM: travisutk
Travis already described the 4KB limit of KickStart (And he is correct.)

But yes, in a sense, "things" can exceed 4KB. I am very interested in
your evaluation kit idea. If it is going to be in public domain, I
will be very happy to help you.

What sort of pre-built object files and constants do you have in mind?
What size? And which MSP430 or MSP430X (capital X)?

--- In m..., "Andy Warner" wrote:
>
> On Tue, Mar 18, 2008 at 11:49 AM, old_cow_yellow
> wrote:
> > Even if you won the uphill battle Anders described, you
> > still cannot link more than 4KB of code. The Linker in
> > KickStart has a 4KB limit.
>
> What _exactly_ are the limitations of KickStart ? I've
> heard that things can exceed 4K, under some circumstances.
>
> I'm interested because I'd like to make an eval kit
> for something that users could use with KickStart. This
> would include pre-built object files (some of which
> contain large-ish data arrays) will these count against
> the 4K limit, or only the code, not the data, something
> more complex ?
>
> --
> Andy
>

Perhaps you could ask the IAR folks to give you a license for your
project, maybe one that expired in a year or something. It would be a
shame to spend all of your time wasted on things like getting your
toolchain straight, rather than working on the "meat" of your thesis
project.

Stuart

--- In m..., "gckir" wrote:
>
> This is my first post in this community. i want to do my Masters
> project using the MSP430 development tool.i am at a very preliminary
> stage now.i want to use the mspgcc compiler to compile my code and then
> use those obj files in the IAR IDE to link them and load in to the
> MSP430. i want to do this coz , i want to compile code which is more
> than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
> the eZ430-RF2500 development tool.
>
> has any one done like this before? can it be possible to do so ? any
> other suggestions please!
>

Thank you, you are right! i have to do some thing like that. i am also
trying to contact some ppl who have used the mspgcc , so that i can
get a taste of it before i start with it. i have only 1 month time to
decide upon these...: 0

--- In m..., "Stuart_Rubin" wrote:
>
> Perhaps you could ask the IAR folks to give you a license for your
> project, maybe one that expired in a year or something. It would be a
> shame to spend all of your time wasted on things like getting your
> toolchain straight, rather than working on the "meat" of your thesis
> project.
>
> Stuart
>
> --- In m..., "gckir" wrote:
> >
> > This is my first post in this community. i want to do my Masters
> > project using the MSP430 development tool.i am at a very preliminary
> > stage now.i want to use the mspgcc compiler to compile my code and
then
> > use those obj files in the IAR IDE to link them and load in to the
> > MSP430. i want to do this coz , i want to compile code which is more
> > than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
> > the eZ430-RF2500 development tool.
> >
> > has any one done like this before? can it be possible to do so ? any
> > other suggestions please!
>
What is the time schedule for your master project?

There is an evaluation version of the IAR IDE besides the kickstart
version. The eval version is fully functional for 30 days after
installation. If you do no commercial product development, there
should be no problems with Anders ;-)

Of course this is not an ideal solution, but maybe it can help you if
other attempts fail (mspgcc...)
--- In m..., "gckir" wrote:
>
> This is my first post in this community. i want to do my Masters
> project using the MSP430 development tool.i am at a very preliminary
> stage now.i want to use the mspgcc compiler to compile my code and then
> use those obj files in the IAR IDE to link them and load in to the
> MSP430. i want to do this coz , i want to compile code which is more
> than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
> the eZ430-RF2500 development tool.
>
> has any one done like this before? can it be possible to do so ? any
> other suggestions please!
>

Hi,



Or you can use vmware server and some email addresses to reinstall the tools
if you cant get your code finished by 30 days.



My 0.02$



Jonathan



_____

De : m... [mailto:m...] De la part de
gckir
Envoy: 18 mars 2008 15:41
: m...
Objet : [msp430] Re: MSPGCC to compile and IAR to link and other stuff



Thank you, you are right! i have to do some thing like that. i am also
trying to contact some ppl who have used the mspgcc , so that i can
get a taste of it before i start with it. i have only 1 month time to
decide upon these...: 0

--- In msp430@yahoogroups. com,
"Stuart_Rubin" wrote:
>
> Perhaps you could ask the IAR folks to give you a license for your
> project, maybe one that expired in a year or something. It would be a
> shame to spend all of your time wasted on things like getting your
> toolchain straight, rather than working on the "meat" of your thesis
> project.
>
> Stuart
>
> --- In msp430@yahoogroups. com, "gckir"
wrote:
> >
> > This is my first post in this community. i want to do my Masters
> > project using the MSP430 development tool.i am at a very preliminary
> > stage now.i want to use the mspgcc compiler to compile my code and
then
> > use those obj files in the IAR IDE to link them and load in to the
> > MSP430. i want to do this coz , i want to compile code which is more
> > than 4kb. but my IAR compiler has limited 4kb c compiler. i am using
> > the eZ430-RF2500 development tool.
> >
> > has any one done like this before? can it be possible to do so ? any
> > other suggestions please!
>