STM32CubeIDE struggling to port app to STM32H723 from F103\G431\F446 code base
As my project has morphed I have started from a STM32F103, moved up to a G431, then a F446.
With a few #defines and tweaks I have a shared main app code base with identical project structures for each of the processor types (that makes it easy to switch between MCU boards as when whilst doing code tests).
All theseSTM32CubeIDE projects have Runtime library = Reduced C, and "do not use default libraries" is ticked. All build fine.
All used CubeMX to generate the appropriate sources etc.., all have 99.9% identical CubeIDE project structures.
As a stepping stone to a STM32F723 I am bodging up a port to an STM32H723, but so far have been unsuccessful in getting it to link. It seems to be having a problem related to the c library area.
(.text._getpid_r+0x0): undefined reference to `_getpid'
/home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld: (_getpid): Unknown destination type (ARM/Thumb) in /home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc.a(libc_a-signalr.o)
(.text._getpid_r+0x0): dangerous relocation: unsupported relocation
same error is repeated for _close, _lseek, _read, _sbrk .... etc...
Is there something different between the fundamental c libraries of H7 as compared to all the other MCUs I have used?
If as a bodge I allow the linker to use default libraries, It gets linked ok but with lots of warnings in the same area...
/home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld: /home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-writer.o): in function `_write_r':
(.text._write_r+0x10): warning: _write is not implemented and will always fail
/home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/bin/ld: /home/main/.eclipse/com.st.stm32cube.ide.mcu.rcp.product_2.0.0_1934254364_linux_gtk_x86_64/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.14.3.rel1.linux64_1.0.0.202510151430/tools/bin/../lib/gcc/arm-none-eabi/14.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-writer.o): note: the message above does not take linker garbage collection into account
(the warnings repeated as per the previous fault).
I've tried regenerating from scratch with CubeMX several times but with same end result.
So something looks broken somewhere but I'm having a problem nailing it down.
