VSCodeで C++の環境を作るメモ
C++で必要なライブラリを取得して、 CMakeLists.txt を使用して VS Code でビルドするまでの流れをメモがてらまとめ。
vcpkg のインストール
https://github.com/microsoft/vcpkg
C++のライブラリを取得してくるコマンドラインツール。
git clone https://github.com/microsoft/vcpkg
.\vcpkg\bootstrap-vcpkg.bat
Github からクローンして、上記のコマンドでビルドする。 無事に完了すると vcpkg に vcpkg.exe ができるので、このフォルダを PATH に入れたりして vpckg コマンドが 使えるようにする。
VS Code のワークスペース設定
vcpkg がインストールできたら、VS Code でワークスペースを作成します。
{
"folders": [
{
"path": "."
}
],
"settings": {
"cmake.configureArgs": [
"-DCMAKE_TOOLCHAIN_FILE=D:/work/repos/vcpkg/scripts/buildsystems/vcpkg.cmake"
]
}
}
code-workspace ファイルに、 cmake.configureArgs を追加します。 パスは vcpkg のインストールフォルダ以下の scripts/buildsystems/vcpkg.cmake を指定。
vcpkg でライブラリを取得する
登録されているライブラリは vcpkg install #### でインストール可能なので、 imgui を入れてみる。
vcpkg install imgui:x64-windows
ライブラリ名の後に、 x64-windows を入れることで、64 ビット版を取得できます。
無事インストールできました。 CMakeLists.txt への書き方が書いてあるので、CMakeLists.txt にコピペします。
imgui をビルドするために必要だったこと
基本は ↑ で良いのですが、指定の backends でサンプルを実行するにはいくつか必要だったので メモがてらまとめておきます。
imgui の指定の binding をインストールする
vcpkg install imgui[glfw-binding,opengl2-binding]:x64-windows --recurse
imgui のうち、 glfw-binding と opengl2-binding が必要だったので 両方をインストールするようにします。
vcpkg install glfw3:x64-windows
さらに glfw3 をインストールします。
cmake_minimum_required( VERSION 3.6 )
project(SampleProj CXX)
set( CMAKE_CXX_STANDARD 11 )
set( CMAKE_CXX_STANDARD_REQUIRED ON )
set( CMAKE_CXX_EXTENSIONS OFF )
find_package(imgui CONFIG REQUIRED)
find_package(glfw3 CONFIG REQUIRED)
add_executable(main main.cpp)
target_link_libraries(main PRIVATE glfw)
target_link_libraries(main PRIVATE imgui::imgui)
target_link_libraries(main PRIVATE opengl32.lib)
そのうえで CMakeLists.txt を書きます。 これで無事 imgui のサンプルを vcpkg でインストールした環境で実行できました。
難しい!