Finished my tests. .ioc file definitely says STM32CubeIDE as expected - Great!
ProjectManager.PreviousToolchain=
ProjectManager.ProjectBuild=false
ProjectManager.ProjectFileName=746gtest.ioc
ProjectManager.ProjectName=746gtest
ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=STM32CubeIDE
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=true
ProjectManager.functionlistsort=
- Add TouchGFX from Additional Software in CubeMX and generate code. Failures in compilation due to missing TouchGFX bootstrap.
- Open the .part file in TouchGFX designer and generate code. Here's part of what happened to the .cproject file (include paths).
✔ ~/STM32CubeIDE/workspace/746gtest2 [master L|✚ 1…15]
21:47 $ git diff
...
+ <listOptionValue builtIn="false" value="../TouchGFX/target/generated"/>
+ <listOptionValue builtIn="false" value="../Drivers/CMSIS/Include"/>
+ <listOptionValue builtIn="false" value="../Drivers/CMSIS/Device/ST/STM32F7xx/Include"/>
+ <listOptionValue builtIn="false" value="../Core/Inc"/>
+ <listOptionValue builtIn="false" value="../Drivers/STM32F7xx_HAL_Driver/Inc"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/App"/>
+ <listOptionValue builtIn="false" value="../Drivers/STM32F7xx_HAL_Driver/Inc/Legacy"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/target"/>
+ <listOptionValue builtIn="false" value="../Middlewares/ST/touchgfx/framework/include"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/generated/fonts/include"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/generated/gui_generated/include"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/generated/images/include"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/generated/texts/include"/>
+ <listOptionValue builtIn="false" value="../TouchGFX/gui/include"/>
Compiling OSWrappers.cpp without issues - Remember to press F5 on your CubeIDE project to reload changes to .cproject file! Classic eclipse. Once you do, TouchGFX will appear in the "Middlewares" folder.
make -j8 all
arm-none-eabi-g++ "../TouchGFX/target/generated/OSWrappers.cpp" -mcpu=cortex-m7 -std=gnu++14 -g3 ....
arm-none-eabi-g++ "../TouchGFX/target/generated/TouchGFXConfiguration.cpp" -mcpu=cortex-m7 -std=gnu++14 ...
arm-none-eabi-g++ "../TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp" -
...
And finally we're done:
Finished building target: 746gtest.elf
arm-none-eabi-size 746gtest.elf
arm-none-eabi-objdump -h -S 746gtest.elf > "746gtest.list"
arm-none-eabi-objcopy -O binary 746gtest.elf "746gtest.bin"
text data bss dec hex filename
94822 2316 3248 100386 18822 746gtest.elf
Finished building: default.size.stdout
Finished building: 746gtest.bin
Finished building: 746gtest.list
22:11:55 Build Finished. 0 errors, 0 warnings. (took 14s.423ms)
Going to bed so i won't see answers until tomorrow. Good night! ;)
/Martin