If you only have MX, how do you build the SW?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 8:16 AM - edited ‎2024-02-22 8:17 AM
I am wondering, if one only downloads MX, then how the software is built?
Is the standard arm-eabi-none toolchain enough? Are in the standard toolchain all the needed include files and libs present? Or ST used its own version of the toolchain, libs, etc?
Solved! Go to Solution.
- Labels:
-
STM32F4 Series
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 9:01 AM - edited ‎2024-02-22 9:02 AM
Cortex-M toolchains bundled with CubeIDE are available separately. They contain the C header files (for GCC) and the runtime library (newlib-nano). So yes, with only a toolchain and the "Cube firmware" package you can build code produced with CubeMX to a working binary. Especially, if you have also make and generate the project as a makefile.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 8:20 AM - edited ‎2024-02-22 8:23 AM
Not clear what you want to do.
CubeMx is the code generator. So all the code initialization as well as the related libraries are available in the project.
You can generate your project with IAR, KEIL, STM32CubeIDE and with makefile.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 8:23 AM
MX is just a configuration utility; it is does not - and is not intended to - build the code.
You would need to separately install a toolchain to build the code.
You would also need something to write your application code; eg, an IDE.
If you install STM32CubeIDE, it includes MX.
A complex system designed from scratch never works and cannot be patched up to make it work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 8:40 AM - edited ‎2024-02-22 8:41 AM
Sorry, perhaps I was not clear enough. Say that you generate code with MX, say that you write your application.
Then, can I use this: https://developer.arm.com/Tools%20and%20Software/GNU%20Toolchain
for building the software? Or I must use CubeIDE?
Or, in another words: Is the toolchain included in CubeIDE is a modified version of that toolchain I linked? Other than the toolchain, does CubeIDE include custom libraries that are not included in the toolchain that I linked?
I finally wish to highlight that I am aware that CubeIDE does much more, but I am interested only in the building process.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 8:46 AM
It is theoretically possible for you to build it yourself using the toolchain. All the necessary files should be present in the CubeMX output.
It is a lot more practical to use STM32CubeIDE to do so.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 9:01 AM - edited ‎2024-02-22 9:02 AM
Cortex-M toolchains bundled with CubeIDE are available separately. They contain the C header files (for GCC) and the runtime library (newlib-nano). So yes, with only a toolchain and the "Cube firmware" package you can build code produced with CubeMX to a working binary. Especially, if you have also make and generate the project as a makefile.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-22 10:30 PM - edited ‎2024-02-22 11:18 PM
I accepted your answer as solution because it really answers my question, thanks.
However,
@Pavel A. wrote:Cortex-M toolchains bundled with CubeIDE are available separately.
EDIT: I made my Research and I found CubeCLT which seems to meet my requirements, though a redistribution of the gnu-stm32-tools binaries for different platforms would be greatly appreciated by many! :)
@Pavel A. wrote:Especially, if you have also make and generate the project as a makefile.
I actually generate MX projects with Makefile and use make. :)
EDIT: I have just found this: https://community.st.com/t5/stm32cubeide-mcus/how-to-download-unbundled-gnu-tools-for-stm32/td-p/76450/page/2 which seems to be inline with my same problem :)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2024-02-23 1:46 PM
Here are official ARM toolchains: https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads
ST has their own fork; changes are documented in pdf files in the zip.
Good luck.
