Version errors with Crossworks, ARM-7 target

I'm just getting started with ARM. I use protoboards that host an LPC2138 ARM-7. My toolchain is Crossworks / J-link, I've set up a project with a demo test file that's supplied with the protoboard, a trivial LED flasher in C. It's the only file in the project, and as a supplied demo it will be error-free. The build gives the following errors:

Source object ARM flash Debug/crt0 has EABI version 0, but target ARM Flash Debug/LED_flasher.elf has EABI version 5. Failed to merge target specific data of file ARM Flash Debug/CRT).o.

So far I'm running without the target connection, my objective is to get the project to build. Any explanation of what these errors are about would be appreciated. TIA

--
This email has been checked for viruses by Avast antivirus software. 
https://www.avast.com/antivirus
Reply to
Bruce Varley
Loading thread data ...

I only use gcc so this is generic advice.

According to the above error message, there are two different incompatible variants of the ABI in use floating around.

Is the source code for crt0 supplied ? If so, can you force a rebuild by renaming the .o out of the way and trying to build your project again ?

Are you using your own build flags/routines or are they vendor supplied ? If this is happening with an out of the box build example, you may need to talk to your vendor.

Also, are there any build options which affect the version of the EABI in use ?

Simon.

--
Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP 
Microsoft: Bringing you 1980s technology to a 21st century world
Reply to
Simon Clubley

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.