2022-07-15 11:22 AM
Hello TouchGFX team,
I migrated my project from 4.18.1 to 4.20.0., added some dynamic graphics handling and now I get a linker error when building the project:
xProML_TFT\xProML_TFT.axf: Error: L6218E: Undefined symbol touchgfx::paint::rgb888::lineFromColor(unsigned char*, unsigned, unsigned, unsigned char) (referred from painterrgb888.o).
xProML_TFT\xProML_TFT.axf: Error: L6218E: Undefined symbol touchgfx::paint::rgb888::tearDown() (referred from painterrgb888.o).
Not enough information to list image symbols.
Not enough information to list load addresses in the image map.
Finished: 2 information, 0 warning and 2 error messages.
"xProML_TFT\xProML_TFT.axf" - 2 Error(s), 0 Warning(s).
I tracked the file painterrgb888.cpp and see a big difference between the version from 4.18.1 and 4.20.0.
As this is a part of the framework (widget / canvas), I don't dare to copy the file from the old version to version 4.20.0.
How can I fix this??? What is wrong ?
Any help is very much appreciated. My customer (Aston Martin Lagonda!) is waiting for the firmware update!
BR GS
Solved! Go to Solution.
2022-07-15 11:05 PM
Try to read this - https://support.touchgfx.com/4.20/docs/miscellaneous/known-issues
I had some issues after I regenerate the project so I follow the instructions at the end of this section:
If you for some reason cannot regenerate code in CubeMX, you can manually add the missing functions by inserting the following includes in a .cpp file in your application:
#include <touchgfx/hal/Paint.hpp>
#include <touchgfx/hal/PaintRGB565Impl.hpp> // 16bpp painting routines
#include <touchgfx/hal/PaintRGB888Impl.hpp> // 24bpp painting routines
2022-07-15 12:00 PM
Primary Clean project after upgrade , and some functions between version changes or is removed.
You need correct your custom code.
2022-07-15 12:38 PM
Did you try to regenerate the code after the update? (but remeber to do a backup first!)
2022-07-15 11:05 PM
Try to read this - https://support.touchgfx.com/4.20/docs/miscellaneous/known-issues
I had some issues after I regenerate the project so I follow the instructions at the end of this section:
If you for some reason cannot regenerate code in CubeMX, you can manually add the missing functions by inserting the following includes in a .cpp file in your application:
#include <touchgfx/hal/Paint.hpp>
#include <touchgfx/hal/PaintRGB565Impl.hpp> // 16bpp painting routines
#include <touchgfx/hal/PaintRGB888Impl.hpp> // 24bpp painting routines
2022-07-17 03:09 AM
I generated code with TouchGFX, yes.
But due to the fact that the project is originally was created before TouchGFX was included by ST (2017), I can not use the Cube Generate Code version. The project structure is totally different. Was a tedious job to include the TouchGFX part into the remaining application and get all components working together. Up to Version 4.20.0. everything was working perfectly with updates.
2022-07-17 03:11 AM
Thank you egoltzman,
this might help and I will try that immediately...
Concerning regenerate with CubeMX:
Due to the fact that the project originally was created before TouchGFX was included by ST (project from 2017), I can not use the Cube Generate Code version. The project structure is totally different. Was a tedious job to include the TouchGFX part into the remaining application and get all components working together. Up to Version 4.20.0. everything was working perfectly with updates.
2022-07-17 04:49 AM
Success! Thank you for your help! it worked!
I was not seeing the "known issues" comment... I only was looking into the change history. Next time I will have a closer look to the known issue part too.
BR GS