这套环境的作用/优点
- VSCode:代替Visual Studio, 启动迅速,内存占用小
- cmake: 与linux一致的构建系统
- ninja + msvc: 用ninja作为cmake的generator, 配合msvc生成工具完成C++工程的编译和链接
- msvc作为编译工具,而不是msys2或mingw64的gcc,在Windows上有更广泛的生态
- ninja作为generator,而不是用Visual Studio 17 2022,能够生成compile_command.json,能改进VSCode的intellisense
- msys2的bash shell:用于编写和运行构建脚本,与linux的bash shell保持一致,无需windows、linux保留两个构建脚本。
环境主要搭建步骤
- 通过命令行使用 Microsoft C++ 工具集 https://learn.microsoft.com/zh-cn/cpp/build/building-on-the-command-line?view=msvc-170
- 勾选安装生成工具
MSVC v143 - VS 2022 C++ x64/x86 生成工具
、 - 勾选安装一个Windows SDK
Windows 10 SDK (10.0.20348.0)
- 勾选安装生成工具
- bash shell构建脚本
GENERATOR="Unix Makefiles" if [ "$OSTYPE" == "msys" ]; thenGENERATOR="Ninja" fi echo "cmake using generator: $GENERATOR"cmake -G "$GENERATOR" \-DCMAKE_BUILD_TYPE="Debug" \-DCMAKE_INSTALL_PREFIX="$(pwd)/../example_package" \-DBUILD_TEST_TOOL=ON \../cmake --build . -j12 cmake --install .