核心思路:将 vcpkg 作为项目子模块(Submodule),并通过脚本或 CMake 自动安装所需库!
在项目根目录中初始化 Git 子模块:
git submodule add https://github.com/microsoft/vcpkg.git
git submodule update --init --recursive
提交子模块信息到项目仓库,其他成员克隆项目时需添加 --recurse-submodules
参数:
git clone --recurse-submodules [你的项目仓库地址]
编写自动化脚本
@echo off
REM 初始化 vcpkg
cd vcpkg
.\bootstrap-vcpkg.bat
cd ..
REM 安装 OpenMesh(x64 动态库)
.\vcpkg\vcpkg install openmesh:x64-windows
REM 集成到全局(可选)
.\vcpkg\vcpkg integrate install
在 CMakeLists.txt
中指定 vcpkg 工具链:
# 设置 vcpkg 工具链路径(相对路径)
set(CMAKE_TOOLCHAIN_FILE "${CMAKE_CURRENT_SOURCE_DIR}/vcpkg/scripts/buildsystems/vcpkg.cmake")
# 查找 OpenMesh 库
find_package(OpenMesh REQUIRED)
# 链接到目标
add_executable(YourProject main.cpp)
target_link_libraries(YourProject PRIVATE OpenMesh::Core OpenMesh::Tools)
-
成员使用 CMake 生成项目时,vcpkg 会自动提供 第三方库的依赖路径。