演示了 cmakelists.txt + vcpkg 如何在linux中实现以下工程效果：

1. 通过cmake 方式维护编译过程，支持使用外部静态库（.a文件）或动态库（.so文件）+头文件，给main代码文件提供编译和链接支持。如本demo 调用了 tinyxml 库的 .a和.h 文件。需要在cmakelists.txt 中指出tinyxml sdk的2个路径信息 即可。
2. 通过vcpkg 的 vcpkg.json 指明开发依赖的vcpkg的库名称。可帮助快速获取共有领域的开发库，减少工程维护难度。

# 如何安装 vcpkg:
1. 克隆 vcpkg 的项目到本地： git clone https://github.com/microsoft/vcpkg.git
2. 进入 vcpkg 目录，执行./bootstrap-vcpkg.sh 即可安装vcpkg。vcpkg 目录下会生成 vcpkg.exe 可执行文件。
3. 启用vcpkg： ./vcpkg integrate install 即可供各个c++项目使用。




# 如何使用 vcpkg+cmake 编译项目代码：
## windows下 如何编译：
1. 修改 cmakelists.txt 文件的目录位置set() 内容。将 LOCAL_VCPKG_INSTALL_DIR 改为你项目下的 vcpkg_installed/x64-windows 目录的绝对路径。
2. 修改 vspkg.json 文件的内容，增加依赖包和版本信息。 然后在项目目录下 调用 vcpkg install 命令，完成后，项目代码目录下会生成 vcpkg_installed/x64-windows 目录，该目录下包含了所有安装的依赖库的.lib和.dll 文件、.h头文件等。
3. 使用vs 2022 提供的cmake 生成
mkdir 项目目录/build
cd 项目目录/build
"C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin\cmake.exe" -DCMAKE_TOOLCHAIN_FILE="/d/install/vcpkg/scripts/buildsystems/vcpkg.cmake" ..

其中 /d/install/vcpkg/scripts/buildsystems/vcpkg.cmake 是vcpkg的cmake 的工具链信息脚本，需要根据vcpkg 的安装路径进行修改。

4. 将在项目目录/build/ 下生成 vs 工程文件。可用vs2022 打开。在vs2022 里完成编译链接，得到可执行文件在 build/Debug/main.exe 路径。

## Linux 下如何编译：
1. 修改 cmakelists.txt 文件的目录位置set() 内容。将 LOCAL_VCPKG_INSTALL_DIR 改为你项目下的 vcpkg_installed/x64-linux 目录的绝对路径。
2. 修改 vspkg.json 文件的内容，增加依赖包和版本信息。 然后在项目目录下 调用 vcpkg install 命令，即可自动下载并安装依赖包。
3. 使用cmake 生成Makefile 文件：
mkdir 项目目录/build
cd 项目目录/build
cmake -DCMAKE_TOOLCHAIN_FILE="/install/vcpkg/scripts/buildsystems/vcpkg.cmake" .. 
make -j4
其中 /install/vcpkg/scripts/buildsystems/vcpkg.cmake 是vcpkg的cmake 的工具链信息脚本，需要根据vcpkg 的安装路径进行修改。
