-
Notifications
You must be signed in to change notification settings - Fork 63
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the Bug
The generated GCC linker script and the startup file are not compatible for STM32F4xx .
To Reproduce
Steps to reproduce the behavior:
- Create file intr.csolution.yml
solution:
cdefault:
compiler: GCC
packs:
- pack: ARM::CMSIS
- pack: Keil::[email protected]
target-types:
- type: Device
device: STMicroelectronics::STM32F429ZITx
build-types:
- type: Debug
optimize: debug
debug: on
- type: Release
optimize: balanced
debug: off
projects:
- project: ./intr.cproject.yml- Create file intr.cproject.yml
project:
groups:
- group: Application
files:
- file: ./src/main.c
components:
- component: CMSIS:CORE
- component: Device:Startup- Build with:
cbuild -S intr.csolution.yml -c intr.Debug+Device --update-rte --packs- The GCC linker ld will signal missing synmbols from linker script:
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: CMakeFiles/Keil_Device_Startup_2_6_3.dir/home/nizar/Work/Practice/Bare_Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S.obj: in function `LoopFillZerobss':
/home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:61:(.text.Reset_Handler+0x38): undefined reference to `_estack'
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:64:(.text.Reset_Handler+0x3c): undefined reference to `_sdata'
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:65:(.text.Reset_Handler+0x40): undefined reference to `_edata'
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:66:(.text.Reset_Handler+0x44): undefined reference to `_sidata'
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:81:(.text.Reset_Handler+0x48): undefined reference to `_sbss'
/usr/lib/gcc/arm-none-eabi/14.2.0/../../../../arm-none-eabi/bin/ld: /home/nizar/Work/Practice/Bare Metal/Interrupts/RTE/Device/STM32F429ZITx/startup_stm32f429xx.S:82:(.text.Reset_Handler+0x4c): undefined reference to `_ebss'
Memory region Used Size Region Size %age Used
ROM0: 288 B 2 MB 0.01%
RAM0: 192 KB 192 KB 100.00%
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
Expected behavior
The build process will give no issues.
Environment (please complete the following information):
- [CMSIS_COMPILER_ROOT/gcc_linker_script.ld.src]
- Version [2.12.0]
- OS: [linux]
Additional context
When I change compiler to CLANG, The error disappears.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
Backlog