Skip to content

Commit 3aaac11

Browse files
committed
Added documentation for using ARM Compiler 5 with 5.12 release
1 parent 05c5d0a commit 3aaac11

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed

docs/tools/tools_intro.md

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,3 +44,39 @@ For more information, please see the [Online Compiler page](developing-mbed-onli
4444

4545
You can export your project from any of our tools to third party tools. For instructions, as well as tool-specific information, see [the Exporting to third party toolchains page](exporting.html).
4646

47+
#### Forcing compilation with ARM Compiler 5 for targets already supporting ARM Compiler 6
48+
49+
It's possible that some developers may need to update to Mbed 5.12 release but still requires compiling with ARM Compiler 5 until they are in possession of ARM Compiler 6.
50+
In those cases, you may still be able to use ARM Compiler 5 depending on the target. If your target uses any ARM Compiler 6 specific binaries or code, then it may not
51+
be able to compile with ARM Compiler 5 or you may see undefined behaviors. In other cases, if you want to try force ARM Compiler 5 you can do so with the following options:
52+
53+
##### By creating a mbed_app.json to override `supported_toolchains`
54+
55+
In this method, you can create or update your `mbed_app.json` with the following content. Note that you can still keep other entries such as `GCC_ARM` or `IAR` while overriding `supported_toolchains` as below.
56+
57+
```
58+
{
59+
"target_overrides": {
60+
"*": {
61+
"target.supported_toolchains": ["ARMC5", "GCC_ARM", "IAR"]
62+
}
63+
}
64+
}
65+
```
66+
67+
##### By local modifications to `targets.json`
68+
69+
In this method, you have to modify the `supported_toolchains` entry for your target in targets.json to remove all `ARM`, `ARMC6` entries and replace it with `ARMC5`. Note that you can still keep other entries such as `GCC_ARM` or `IAR`.
70+
71+
See below for example:
72+
```
73+
"MY_TARGET_NAME": {
74+
"supported_form_factors": [...],
75+
"core": "Cortex-M4",
76+
"supported_toolchains": ["ARMC5", "GCC_ARM", "IAR"],
77+
...
78+
}
79+
```
80+
81+
<span class="note"> **Note:** The above methods to override ARM toolchain version is made available only to enable developers migrating from ARM Compiler 5 to ARM Compiler 6. Future releases of Mbed OS may remove
82+
this option and thus developers are strongly encouraged to move to ARM Compiler 6.</span>

0 commit comments

Comments
 (0)