IDE Configuration

Updated 5 days 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
    }
    

    Note: you may have to change the Qt include path to the correct one for your system. Run qmake -query QT_INSTALL_HEADERS to find out the correct path.

    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 ui_*.h 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.

    Microsoft Visual Studio (Windows)

    Qt Creator (Windows, Linux)

    XCode (Mac)