🐙

最近のvcpkgとVisual Studio Codeの使い方

2024/01/01に公開

CMake でパッケージをインストールして使用する | Microsoft Learn

を参考に進めていく。

まず、コマンドプロンプト上で作業を始める。

set VCPKG_ROOT="C:\path\to\vcpkg"

とあるが、「"」は後に邪魔になるらしく、

>cmake --preset=default
Preset CMake variables:

  CMAKE_TOOLCHAIN_FILE=""C:\src\vcpkg"/scripts/buildsystems/vcpkg.cmake"

-- Building for: Visual Studio 17 2022
CMake Error at C:/Program Files/CMake/share/cmake-3.27/Modules/CMakeDetermineSystem.cmake:154 (message):
  Could not find toolchain file:
  "C:\src\vcpkg"/scripts/buildsystems/vcpkg.cmake
Call Stack (most recent call first):
  CMakeLists.txt:3 (project)


-- Configuring incomplete, errors occurred!

こんな感じのエラーが出るので、

set VCPKG_ROOT=C:\src\vcpkg

のように「"」を抜くとうまくいった。

一通り上記文章を終えたら、「code .」でVS codeを起動する。

まず、実行とデバッグだが、「launch.jsonファイルを作成する」をクリック、「C++ (Windows)」を選択する。

launch.jsonファイルに以下のように追記する。

{
    // IntelliSense を使用して利用可能な属性を学べます。
    // 既存の属性の説明をホバーして表示します。
    // 詳細情報は次を確認してください: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C++ Launch (Windows)",
            "type": "cppvsdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/Debug/HelloWorld.exe",
            "cwd": "${workspaceFolder}"
        }
    ]
}

すると、上記name通りの「C++ Launch (Windows)」という「実行とデバッグ」のためのボタン等が表示されるので、これを押してみると、正常に「HelloWorld!」が表示される。

また、helloworld.cppの適当な位置にブレークポイントを置いて止まるか確かめる。

それから、コマンドパネル(ctrl + shift + p)の「CMake: ビルド」でビルドできるか確認する。

次に、helloworld.cppの、

#include <fmt/core.h>

にincludeパスが通っていないので赤い波上の下線が表示されてると思うので、includeパスを通したい。

これも、いきなりコマンドパネルで「C/C++: 構成の編集(JSON)」を選択すると、.vscode下にc_cpp_properties.jsonが生成される。

そのincludeパスの設定に以下のように追記すると、上記下線は消えるようである。

            "includePath": [
                "${workspaceFolder}/**",
                "${workspaceFolder}/build/vcpkg_installed/x64-windows/include"
            ],

追記した瞬間に消えるわけではなく、VS codeを立ち上げなおしたり、helloworld.cppタブを開きなおしたりした。

以上

Discussion