I'm trying to port code that has been compiled using ADS5.8 to a new beta compiler RVDS6.0 (LLVM based).
I have 2 problems:
1. weak function
I got the following error during linking:
Error: L6654E: Rejected Local symbol [Anonymous Symbol] referred to from non group member my_main.o(.debug_info)
I think the errors above caused by weak functions
extern int my_init_device(void) __attribute__ ((weak));
int my_init_device(void) __attribute__ ((weak))
{ return(0); }
Currently, to bypass it, I temporarily commented out the above and made it as a non-weak function.
2.
Warning: L6665W: Neither Lib$$Request$$armlib Lib$$Request$$cpplib defined, not searching ARM libraries.
Error: L6411E: No compatible library exists with a definition of startup symbol __main
I have something like the following in my init code:
IMPORT __main
B __main
Also, I created an archive and this init code is part of the archive, then I linked this archive with a user object code.
The code was compiled and linked with earlier RVDS or ADS.
Thanks,
-Andreas
The second problem, I was able to solve it, by adding --force_scanlib option to the linker.
For the first problem, I followed your suggestion and contacted support.
Hi Andreas,
Thanks for the update - glad you managed to solve one of your problems.
Joe