这套环境的作用/优点
- 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保留两个构建脚本。
环境主要搭建步骤
-
- 勾选安装生成工具
MSVC v143 - VS 2022 C++ x64/x86 生成工具
、 - 勾选安装一个Windows SDK
Windows 10 SDK (10.0.20348.0)
- 勾选安装生成工具
-
bash shell构建脚本
bashGENERATOR="Unix Makefiles" if [ "$OSTYPE" == "msys" ]; then GENERATOR="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 .