Atollic Linker Issue: Symbols not always found
Using latest Atollic TrueStudio (9.0.1) for STM32H743VI. From time to time, Atollic stops linking the project saying some symbols are not found. The only work around that I found is to re-create the entire workspace and the projects in it. Cleaning projects, deleting Debug directories does not help.
This situation was found with different projects and different scenarios, such as:
* A weak symbol (SysTick_Handler) defined in startup_stm32h743xx.s cannot be re-defined in the project's xxxx.s file. Removing (weak) definition from the
startup_stm32h743xx.s solves the problem
;* Defining two symbols (functions) with the same name does not generate link error. Only re-creating the worksapce and projects solves the issue;
* Function defined in the .cpp file reported 'Not Defined' symbol by the linker. Again, only re-creating the workspace resolves the issue.
* Modifying library's source code does not necessary results in its re-building or re-linking with the referencing executable project.
Again, the conditions and steps to reproduce each time were different, the only common I could think are:
1. Troubled symbols were located in static libraries;
2. Source code for symbols were in linked folders (not in the Atollic's project directory);
3. Missing symbols reside in the same source file;
4. Using optimisation to remove dead/unreferenced code and data;
5. Using 9.0.1 version. Did not have a chance to try with other versions. Was using direct source include instead of libs before.
Any suggestions how to clean Atolic's workspace without complete re-creating all the projects from the scratch (takes almost a day) ?