Skip to content

XFA support on AVR and MSP430 broken with binutils 2.36.1 #16251

@maribu

Description

@maribu

Description

It seems there is an issue in the linker scripts for AVR and MSP430 (didn't test all archs, but ARM and RISC-V still work) that surfaces after updating to binutils 2.36.1

Steps to reproduce the issue

  • make BOARD=arduino-uno -C examples/hello_work
  • make BOARD=z1 -C examples/hello_work

with binutils 2.36.1

Expected results

Linking succeeds

Actual results

AVR:

/usr/lib/gcc/avr/10.2.0/../../../../avr/bin/ld: section .bss VMA [0000000000800100,000000000080047e] overlaps section .data VMA [0000000000800060,0000000000800187]
collect2: error: ld returned 1 exit status
make: *** [/home/maribu/Repos/software/RIOT/examples/hello-world/../../Makefile.include:625: /home/maribu/Repos/software/RIOT/examples/hello-world/bin/arduino-uno/hello-world.elf] Error 1

MSP430:

/usr/lib/gcc/msp430-elf/10.2.0/../../../../msp430-elf/bin/ld: warning: /home/maribu/Repos/software/RIOT/cpu/msp430_common/ldscripts/xfa.ld contains output sections; did you forget -T?
/usr/lib/gcc/msp430-elf/10.2.0/../../../../msp430-elf/bin/ld: .rodata not found for insert
collect2: error: ld returned 1 exit status
make: *** [/home/maribu/Repos/software/RIOT/examples/hello-world/../../Makefile.include:625: /home/maribu/Repos/software/RIOT/examples/hello-world/bin/z1/hello-world.elf] Error 1

Node: Commenting out the including of the corresponding xfa.ld linker script fixes the issue.

Versions

Current master.

Metadata

Metadata

Assignees

Labels

Area: cpuArea: CPU/MCU portsPlatform: AVRPlatform: This PR/issue effects AVR-based platformsPlatform: MSPPlatform: This PR/issue effects MSP-based platformsType: bugThe issue reports a bug / The PR fixes a bug (including spelling errors)

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions