IDE Configuration

Updated 1 month ago

    This is a work-in-progress page that attempts to describe how to set up MuseScore development with different IDEs.

    VSCode (Linux)

    Initial setup

    Install the following extensions:

    • Microsoft C/C++ Intellisense
    • CMake Tools
    • CMake (optional)

    Configuration

    Configure ~/.vscode/c_cpp_properties.json as so:

    {
        "configurations": [
            {
                "name": "Linux",
                "includePath": [
                    "${workspaceFolder}/",
                    "${workspaceFolder}/build.debug/",
                    "/usr/include/",
                    "/usr/local/include/"
                ],
                "defines": [],
                "compilerPath": "/usr/bin/gcc",
                "cStandard": "c11",
                "cppStandard": "c++11",
                "intelliSenseMode": "gcc-x64",
                "compileCommands": "${workspaceFolder}/build/compile_commands.json"
            }
        ],
        "version": 4
    }
    

    Then configure CMake tools (~/.config/Code/User/settings.json), adding the following line to the configuration:

    "cmake.copyCompileCommands": "build/compile_commands.json"
    

    This makes the majority of VSCode work.

    There is still an issue with some header files. They don't seem to be picked up in the includes for some reason, so you may encounter these errors:

    #include errors detected. Consider updating your compile_commands.json or includePath. Squiggles are disabled for this translation unit (/path/to/my/workspace).
    cannot open source file "ui_filename.h"
    

    If anyone finds a solution, please update this page and notify @TheOtherJthistle.

    Other known issues:

    • CMake Tools fills up the build directory with stuff. If anyone can work out how to make it put all this stuff in build.debug, add it to this page, please

    Microsoft Visual Studio (Windows)

    Qt Creator (Windows, Linux)

    XCode (Mac)