We recommend that any new projects are set up in the same way as our tutorial examples are set up.
This general approach means that it is in fact the build system rather than the IDE which manages much of how things are set up for building and you get portability for free. Decoupling the IDE from the build system means you can support many IDEs simply by using a standardized build system.
This means that for new projects, we suggest using:
As an example of the IDEs which will automatically work with your buildsystem if you use cmake projects:
As an example of the IDEs which will automatically work with your buildsystem if you use gradle projects:
This format is so ubiquitous with the target platform that this goes without saying, but as an example of the IDEs which will automatically work with your buildsystem if you use CMake projects:
For the sake of using freely available cross platform software, this example will set up using Visual Studio Code as the proposed IDE for all languages. For a build system, we will use CMake for C / C++ code, Gradle for Java code, and Visual Studio for C# code.
This solution suggests installing:
After completing this, if you open a folder containing a CMakeLists.txt file with the correct OPENMAMA_ROOT etc set up, you will get a prompt like this:
After agreeing to this and letting intellisense do its thing, autocomplete etc becomes available:
Opening a folder containg a gradle project will provide a prompt like this:
Which leads to autocomplete working:
Opening a folder containing a csproj file will pop up a prompt like this:
Which leads to autocomplete working: