MacOS 上の vscode から C++ コードをデバッグしようとしています

MacOS 上の vscode から C++ コードをデバッグしようとしています

MacOS 上の VSCode から c++17 コードをデバッグしようとしています。VSCode コマンドラインからビルドすることはできますが、デバッグをビルドしようとすると次のエラーが発生します。

エラー

C++17 コードをビルドするために VSCode で起動およびタスク JSON ファイルを構成する方法を教えてください。また、C++20 のコルーチン コードをコンパイルしたいと考えています。VSCode で同じビルドを行うにはどうすればよいですか?

答え1

C++ をサポートする IDE をインストールします。Visual Studio Code はフル機能のコード エディターですが、Visual Studio のような IDE ではありません。C++ をサポートする一般的な IDE であればどれでも使用できます。XCode は C++ コンパイラが組み込まれた非常に優れた IDE で、C++ を記述し、クリックしてコンパイルして実行できます。

答え2

以下の設定で、MacOS 上の VSCODE で C++17 コードをビルドできました。

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "clang++ build active file",
            "command": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++",
            "args": [
                "-g",
                "${file}",
                "-std=c++17",
                "--debug",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin"
            },
            "problemMatcher": [
                "$gcc"
            ]
        }
    ]
}

答え3

macOS上のVSCodeでC++コードをビルドしてデバッグするには、次の手順に従ってください。このチュートリアル

c_cpp_properties.json (プロジェクト フォルダーの .vscode フォルダー内) は次のようになります (YOURUSERNAME を macOS ユーザー名に置き換えます)。

{
"configurations": [
    {
        "name": "Mac",
        "includePath": [
            "${workspaceFolder}/**",
            "/Users/YOURUSERNAME/bin/CPP_Libraries/Eigen/Eigen/**"
        ],
        "defines": [],
        "macFrameworkPath": ["/System/Library/Frameworks",
            "/Library/Frameworks"],
        "compilerPath": "/usr/bin/clang",
        "cStandard": "c11",
        "cppStandard": "c++17",
        "intelliSenseMode": "clang-x64"
    }
],
"version": 4

}

関連情報