Recently, I have just finished an application project development for an embedded system. The project is building a CMD line(CLI) tools for multiple OS, windows10, Linux, and macOS. I just want to share with you guys my experience with the 3 platforms. BTW, the RTL8722DM dev from the following link is what my project is used for. Ameba ARDUINO: Getting Started with RTL8722 – Realtek IoT/Wi-Fi MCU Solutions 3
Basically, windows are the most convenient platform. It has all kinds of tools for compiling c, CPP, and c# projects. One thing that needs to be considered. 1, if you use visual studio for c# in windows. the tool you have built is not easy to transfer to the other platforms. To support a visual studio c# project there a lot of works to do in Linux and macOS. Additionally, you have to set up the toolchain/compiler properly for windows.
Linux has no issue to compile my project. But lack of development tools and “sudo” sometimes give you big problems. For, c and CPP development, I suggest that Linux is the best and all project is able to transfer to the other platform.
macOS has the most limitations. I am a Windows person so using macOS to develop is a bit troublesome for me. And the disc name of macOS always has a “space” which is very bad for process command. However, I would say the project made by macOS is the most stable and small size one.
To summarize, if you trying to make a multiple platform/OS support project. I would recommend using the c/cpp project and start on Linux. Please try not to start with windows, windows is the easiest way, but will give you troubles when trying to support all 3 platforms/OS.