MarlinFirmware / Marlin

Marlin is an optimized firmware for RepRap 3D printers based on the Arduino platform. Many commercial 3D printers come with Marlin installed. Check with your vendor if you need source code for your specific machine.
https://marlinfw.org
GNU General Public License v3.0
16.22k stars 19.22k forks source link

Build for BTT SKR V2 fails - Multiple function definitions #23362

Closed rongoodman303 closed 2 years ago

rongoodman303 commented 2 years ago

Did you test the latest bugfix-2.0.x code?

Yes, Marlin 2.0.9.3 bugfix dated 2021-12-26, and the problem still exists.

Bug Description

Marlin 2.0.9.3 bugfix dated 2021-12-26.

Build fails at final link step with multiple function definitions. See attached .txt file for error messages. No other errors or warnings until firmware.elf link process.

Build Link Erors.txt

Bug Timeline

New bug. Was not happening 4 days ago. Just started with latest Marlin 2.0.9.3 bugfix dated 2021-12-26 and downloaded today..

Expected behavior

Expect final link to succeed since no errors or warnings in Configuration.h or Configuration_adv.h processing.

Actual behavior

Build failed.

Steps to Reproduce

Compile with attached config files and Marlin 2.0.9.3 bugfix dated 2021-12-26.

Version of Marlin Firmware

Marlin 2.0.9.3 bugfix dated 2021-12-26

Printer model

Wanhao Duplicator I3 Plus

Electronics

BTT SKR2 main board with BTT TFT35 v3.0 display

Add-ons

NA

Bed Leveling

Mesh Bed Leveling

Your Slicer

No response

Host Software

No response

Additional information & file uploads

RonGoodman303_Marlin_2.0.9.3+.zip

In the very same Configuration.h as attached, if you simply toggle two selections:

The custom options at lines 153-154 from SKRV2 to SKRV14:

define SKRV14 // SKR V14 Turbo Motherboard

//#define SKRV2 // SKR v2 Motherboard

and Motherboard selection at lines 176-177 from BTT_SKR_V2_0_REV_B to BTT_SKR_V1_4_TURBO:

//#define MOTHERBOARD BOARD_BTT_SKR_V2_0_REV_B // For SKRV2

define MOTHERBOARD BOARD_BTT_SKR_V1_4_TURBO // For SKRV14

and don't change anything else:, the build for BTT_SKR_V1_4_TURBO is successful with all of the other options and selections in both files. So the issue appears to be specific to BTT SKR V2 motherboard builds.

rongoodman303 commented 2 years ago

I am not a C== programmer, but this issues seems to have been intruduced with this commit: https://github.com/MarlinFirmware/Marlin/commit/56ac68172796d03c15235738fcb234c48167d807

rongoodman303 commented 2 years ago

Solved:

Issue was probably "leftovers" from prior installations. Apparently some files changed locations and ABM "Clean" did not remove them, and unzipping and overwriting the existing 2.0.x bugfix folder also did not clean up old files.

github-actions[bot] commented 2 years ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.