Skip to content

Commit 15c6932

Browse files
JF002mark9064
authored andcommitted
Update GCC (in doc and docker) to GCC14 (Arm GNU Toolchain Version 14.3.Rel1 Released: July 03, 2025, https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads)
1 parent 7128fc0 commit 15c6932

File tree

5 files changed

+9
-9
lines changed

5 files changed

+9
-9
lines changed

.vscode/c_cpp_properties.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"env": {
33
// TODO: This is a duplication of the configuration set in /docker/build.sh!
44
"TOOLS_DIR": "/opt",
5-
"GCC_ARM_PATH": "gcc-arm-none-eabi-10.3-2021.10"
5+
"GCC_ARM_PATH": "arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi"
66
},
77
"configurations": [
88
{

.vscode/launch.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
"continue"
5454
],
5555
// Only use armToolchainPath if your arm-none-eabi-gdb is not in your path (some GCC packages does not contain arm-none-eabi-gdb)
56-
"armToolchainPath": "${workspaceRoot}/../gcc-arm-none-eabi-10.3-2021.10/bin",
56+
"armToolchainPath": "${workspaceRoot}/../arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi/bin",
5757
"svdFile": "${workspaceRoot}/nrf52.svd",
5858
"configFiles": [
5959
"interface/stlink.cfg",
@@ -68,7 +68,7 @@
6868
"request": "launch",
6969
"servertype": "external",
7070
// FIXME: This is hardcoded. I have no idea how to use the values set in build.sh here
71-
"gdbPath": "/opt/gcc-arm-none-eabi-10.3-2021.10/bin/arm-none-eabi-gdb",
71+
"gdbPath": "/opt/arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi/bin/arm-none-eabi-gdb",
7272
// Connect to an already running OpenOCD instance
7373
"gdbTarget": "host.docker.internal:3333",
7474
"svdFile": "${workspaceRoot}/nrf52.svd",

doc/buildAndProgram.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
To build this project, you'll need:
66

7-
- A cross-compiler : [ARM-GCC (10.3-2021.10)](https://developer.arm.com/downloads/-/gnu-rm)
7+
- A cross-compiler : [ARM-GCC 14.3-Rel1 from July 03, 2025 (AArch32 bare-metal target (arm-none-eabi))](https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads)
88
- The NRF52 SDK 15.3.0 : [nRF-SDK v15.3.0](https://nsscprodmedia.blob.core.windows.net/prod/software-and-other-downloads/sdks/nrf5/binaries/nrf5sdk153059ac345.zip)
99
- The Python 3 modules `cbor`, `intelhex`, `click` and `cryptography` modules for the `mcuboot` tool (see [requirements.txt](../tools/mcuboot/requirements.txt))
1010
- To keep the system clean, you can install python modules into a python virtual environment (`venv`)
@@ -38,7 +38,7 @@ CMake configures the project according to variables you specify the command line
3838
3939
Variable | Description | Example|
4040
----------|-------------|--------|
41-
**ARM_NONE_EABI_TOOLCHAIN_PATH**|path to the toolchain directory|`-DARM_NONE_EABI_TOOLCHAIN_PATH=/home/jf/nrf52/gcc-arm-none-eabi-10.3-2021.10/`|
41+
**ARM_NONE_EABI_TOOLCHAIN_PATH**|path to the toolchain directory|`-DARM_NONE_EABI_TOOLCHAIN_PATH=/home/jf/nrf52/arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi/`|
4242
**NRF5_SDK_PATH**|path to the NRF52 SDK|`-DNRF5_SDK_PATH=/home/jf/nrf52/Pinetime/sdk`|
4343
**CMAKE_BUILD_TYPE (\*)**| Build type (Release or Debug). Release is applied by default if this variable is not specified.|`-DCMAKE_BUILD_TYPE=Debug`
4444
**BUILD_DFU (\*\*)**|Build DFU files while building (needs [adafruit-nrfutil](https://github.com/adafruit/Adafruit_nRF52_nrfutil)).|`-DBUILD_DFU=1`

doc/buildWithVScode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ To support as many setups as possible the VS Code configuration files expect the
88

99
Variable | Description | Example
1010
----------|-------------|--------
11-
**ARM_NONE_EABI_TOOLCHAIN_PATH**|path to the toolchain directory|`export ARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-10.3-2021.10`
11+
**ARM_NONE_EABI_TOOLCHAIN_PATH**|path to the toolchain directory|`export ARM_NONE_EABI_TOOLCHAIN_PATH=/opt/arm-gnu-toolchain-14.3.rel1-x86_64-arm-none-eabi`
1212
**NRF5_SDK_PATH**|path to the NRF52 SDK|`export NRF5_SDK_PATH=/opt/nRF5_SDK_15.3.0_59ac345`
1313

1414
## VS Code Extensions

docker/build.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export NPM_DIR="$BUILD_DIR/npm"
1616
export npm_config_cache="${NPM_DIR}"
1717

1818
export BUILD_TYPE=${BUILD_TYPE:=Release}
19-
export GCC_ARM_VER=${GCC_ARM_VER:="10.3-2021.10"}
19+
export GCC_ARM_VER=${GCC_ARM_VER:="14.3.rel1"}
2020
export NRF_SDK_VER=${NRF_SDK_VER:="nRF5_SDK_15.3.0_59ac345"}
2121
# convert to lower case and remove _ and . character
2222
# the download URL uses the SLUG, but the extracted folder is named like the original value
@@ -26,7 +26,7 @@ export NRF_SDK_VER_SLUG=${NRF_SDK_VER_SLUG//[_.]/}
2626
MACHINE="$(uname -m)"
2727
[ "$MACHINE" = "arm64" ] && MACHINE="aarch64"
2828

29-
export GCC_ARM_PATH="gcc-arm-none-eabi-$GCC_ARM_VER"
29+
export GCC_ARM_PATH="arm-gnu-toolchain-$GCC_ARM_VER-$MACHINE-arm-none-eabi"
3030

3131
main() {
3232
local target="$1"
@@ -50,7 +50,7 @@ main() {
5050
}
5151

5252
GetGcc() {
53-
wget -q https://developer.arm.com/-/media/Files/downloads/gnu-rm/$GCC_ARM_VER/$GCC_ARM_PATH-$MACHINE-linux.tar.bz2 -O - | tar -xj -C $TOOLS_DIR/
53+
wget -q https://developer.arm.com/-/media/Files/downloads/gnu/$GCC_ARM_VER/binrel/$GCC_ARM_PATH.tar.xz -O - | tar -xJ -C $TOOLS_DIR/
5454
if [ ! -d "$TOOLS_DIR/$GCC_ARM_PATH" ]; then
5555
echo "missing GCC path: $TOOLS_DIR/$GCC_ARM_PATH"
5656
return 1

0 commit comments

Comments
 (0)