EmbDev.net

Forum: ARM programming with GCC/GNU tools Missing startup file crt0.o


von Helge K. (helge_k25)


Rate this post
useful
not useful
When I start compiling for ARM I find some GNU GCC tool sets like 
Yagarto and emIDE. The first is just a tool set that can be integrated 
in any development environment, the latter is a complete IDE.

I would prefer to use the stand alone tool set. But when I compile a 
hello world with Yagarto program I get the error message

ld.exe: cannot find crt0.o: No such file or directory

But the GNU GCC version in emIDE compiles out-of-the-box. You can find a 
crt0.o in the product tree.

I doubt that Yagarto just offers an incomplete tool set. What is the 
object to configure the tool set that it can't be used with additional 
tricks? What am I missing with this crt0.o? What is the preferred way to 
setup a project with a tool set lacking crt0.o

von Michael F. (mifi)


Rate this post
useful
not useful
Hello Helge,

have you try one of my example here:
http://www.emb4fun.de/arm/examples/index.html

No crt0.o is needed. I have removed the libnosys from
the YAGARTO toolchain because it makes some problem
to create the toolchain itself.

My experience is that you need your own crt0 or startup
file for your project/hardware. In case of my examples
you will find a startup_stm32f4xx.s in the M4 example.

Best regards,
Michael

Please log in before posting. Registration is free and takes only a minute.
Existing account
Do you have a Google/GoogleMail account? No registration required!
Log in with Google account
No account? Register here.