Do you want to build a custom IDE for C/C++ development? Do you want to enable your users to efficiently work with a specific embedded hardware, custom toolchains and development infrastructure by providing a modern, tailor-made tool with state-of-the-art language and debugging support? In this talk we will show you how we bootstrapped such a tool project within only a week!
CDT Cloud Blueprint is a modern, web-based IDE for C/C++ development. It also serves as a highly extensible and flexible basis to develop your own custom tool for C/C++ development. CDT Cloud Blueprint already comes with all basic features for developing, compiling and debugging C/C++ code. However, when building a custom tool for specific use cases, such as specific embedded hardware and custom toolchains, you usually want to add some concepts on top.
In this talk, we demonstrate how to bootstrap the development of a custom C/C++ tool specifically for embedded development based on CDT Cloud Blueprint. As an example device, we will use a Raspberry Pico. We will guide you through the first steps of developing such a tool and explore the following typical customizations for a custom C/C++ IDE:
- Custom project configuration: We demonstrate how to introduce custom project configurations that includes use case specific things like the default build, the connected devices, the “flashing” of devices, etc. All these actions can then directly be shown in the UI in a projects’ context to make the development flow convenient for the user.
- Developing and debugging: We walk through the options and the process of adding support for editing C/C++ code, including syntax highlighting, code navigation and auto completion. Furthermore, we show you how to support custom builds, debug running programs and inspect the memory of the connected device.
- Connect hardware: We show you how to add custom user interfaces allowing users to conveniently manage their devices in a custom device manager, configure their devices, connect to them, and flash the connected device with the latest state of the program.
Of course, there is still much to do after the first week of development. Therefore, for all mentioned customizations, we will discuss the next steps and further refinements. The code of the demonstrated example will be available open source. Therefore, the presented example tool can serve as a starting point for your own custom tool project.
Join this talk to get a jump start with your own tool project for C/C++ and embedded development!