Porting a new target for exporters
Exporting allows users to transition from Mbed CLI or the Online Compiler to the development environment of their choice. When you add a new target, you must add support for exporters. The following sections explain how you add support for a new target to each exporter.
Eclipse and Make
The Eclipse unmanaged project exporter and the Makefile exporter use a generated Makefile for building. The Makefile generated by these exporters mimics the behavior of the Mbed OS build system. For example, if
mbed compile -t IAR -m NUCLEO_F303ZE works, then
mbed export -i make_iar -m NUCLEO_F303ZE also works.
GNU Arm Eclipse managed projects
The GNU Arm Eclipse exporter is available for all targets that use the GCC Arm toolchain. Similar to the Makefile and Eclipse unmanaged project exporters, the GNU Arm Eclipse exporter mimics the behavior of the Mbed OS build system with the
GCC_ARM toolchain. For example, If
mbed compile -t GCC_ARM -m NUCLEO_F207ZG works, then
mbed export -i gnuarmeclipse -m NUCLEO_F207ZG also works.
Qt Creator and Make
The Qt Creator project export is available for the GCC Arm toolchain; it generates a Qt Creator generic project and a Makefile, in a similar fashion to the Eclipse and Make exporter.
You can open the generated
.creator project in Qt Creator, enabling integration with the project pane, syntax highlighting and automatic code completion. You can use the Makefile to compile the project; the IDE automatically invokes the Makefile when you issue the build command.
uVision and IAR
uVision and IAR both use CMSIS packs to find target information necessary to create a valid project file. Add a
"device_name" attribute to your target as Adding and configuring targets describes to support these exporters.
uVision project file template uses target information from CMSIS Packs to generate valid uVision5 projects. If the uVision exporter cannot find the
"device_name", it substitutes a generic Arm CPU target.
tools/export/iar/iar_definitions.json uses this device name to store information necessary to set the target in an IAR project.
You can regenerate
index.json to contain a newly made CMSIS pack with the following command:
mbed export -i uvision --update-packs
Include the changes to
index.json in your device support PR.