Skip to content

Update to GCC 14.3, Newlib 4.5.0 #2975

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Jun 12, 2025
Merged

Update to GCC 14.3, Newlib 4.5.0 #2975

merged 13 commits into from
Jun 12, 2025

Conversation

earlephilhower
Copy link
Owner

Moves to full-fat printf/scanf because Newlib no longer supports all the calls libstdc++ requires with the older, smaller, nano-formatted-io option.

Moves to latest SDK develop branch with important float acceleration fixes for the RP2350, among other updates.

Moves to latest pioasm, picotool develop branches

Moves to full-fat printf/scanf because Newlib no longer supports all the
calls libstdc++ requires with the older, smaller, nano-formatted-io option.

Moves to latest SDK develop branch with important float acceleration fixes
for the RP2350, among other updates.

Moves to latest pioasm, picotool develop branches
@earlephilhower earlephilhower marked this pull request as draft May 30, 2025 18:19
@earlephilhower earlephilhower marked this pull request as ready for review May 30, 2025 19:44
@earlephilhower earlephilhower marked this pull request as draft May 30, 2025 20:09
@earlephilhower
Copy link
Owner Author

Newlib (and hence all 18 toolchains) needs to be rebuilt. Found that %hh and %ll formats failes with full-fat printf support...

@earlephilhower earlephilhower marked this pull request as ready for review May 31, 2025 01:40
@earlephilhower
Copy link
Owner Author

@maxgerhardt Can you look at https://github.com/earlephilhower/arduino-pico/actions/runs/15366838913/job/43240842696 and see if you can provide some pointers? The toolchain is being updated with this PR, butit was fine until the change to add in picosdk to the P.IO JSONs...

@maxgerhardt
Copy link
Contributor

Ah yes,

Platform Manager: raspberrypi@1.16.0+sha.55cd180 is already installed
Tool Manager: toolchain-gccarmnoneeabi@1.90301.200702 is already installed
Tool Manager: Installing https://github.com/maxgerhardt/picotool-dummy/archive/refs/heads/main.zip
Unpacking 0% 10% 20%
Tool Manager: tool-picotool-rp2040-earlephilhower@5.120300.240827 has been installed!
Platform Manager: Updating raspberrypi @ 1.16.0+sha.55cd180
git version 2.49.0
From https://github.com/maxgerhardt/platform-raspberrypi
   55cd180..e89b79e  develop    -> origin/develop
 * [new tag]         v1.0.0     -> v1.0.0
 * [new tag]         v1.1.0     -> v1.1.0
Fetching submodule builder/frameworks/arduino/mbed-core
error: The following untracked working tree files would be overwritten by merge:
	boards/adafruit_feather_rp2350_adalogger.json
	boards/adafruit_fruitjam.json

The problem stems from the "raspberrypi" platform already being installed in the cache, then the board definition files from this core are copied over, then a platform update seems to be done, but with the changed files, git refuses to update them. I thought I resolved this in the Github Actions CI some time earlier, I will have a look again. (Or, cache delete and rerun)

@maxgerhardt
Copy link
Contributor

maxgerhardt commented Jun 1, 2025

Ah, that fix is still stuck in https://github.com/earlephilhower/arduino-pico/pull/2620/files#diff-b71166ed0f585913318ed46933ff9b12901e211de3ac88c40de03f0a944c0ae0 where it doesn't even properly belong. Will open a separate PR for this so it can be merged cleanly.

Edit: Done in #2982

@earlephilhower
Copy link
Owner Author

Ahh, I forgot about the caches. Your other PR looks to have fixed it, thanks!

@earlephilhower earlephilhower merged commit e7a2355 into master Jun 12, 2025
27 checks passed
@earlephilhower earlephilhower deleted the newgcc branch June 12, 2025 17:54
@maxgerhardt
Copy link
Contributor

maxgerhardt commented Jun 12, 2025

PlatformIO toolchain links and arduino-pico target git commit hash will be updated shortly. Will this produce a new Arduino-Pico release, like 4.5.5 or 4.6.0?

@earlephilhower
Copy link
Owner Author

Yes, 4.6.0 probably because it's a minor (2nd dot-ish) rev of everything (GCC, SDK, Newlib).

Was thinking of letting it wait a bit, in case someone finds something major, and releasing 4.6.0 in the next week or two.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants