arm + gcc + newlib + crt0

Sep 29, 2011 1 Replies

At my work we have been using ARM based gcc compilers for a long time. All = of the ones we have used in the past included a crt0 which we branched to (= _mainCRTStartup) to initialize the stack, heap, process the command line an= d then branch to main (the stack, heap, etc issued a swi which we handled a= nd did the appropriate action). In the newer toolchains built for embedded = (none-eabi) it doesn't seem like crt0 is around anymore. Do I just need to = do the things that crt0 did in my own code, or is there a newer method for = starting up the C runtime before getting to main?



Thanks for any information you can give me.



Slide


Last I checked, libgloss (part of newlib) still used crt0.S for startup, and gcc still looked for it, outside of arm-linux at least.

If your tools supplier does otherwise, you need to read their documentation to figure it out.

hmmm... perhaps it's the target triplet you're using?

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required