使用vcpkg编译OsgEarth

前言

现在编译OsgEarth挺麻烦的,建议使用vcpkg编译,这样相关依赖的库:osg、gdal、curl、sqlite3、protobuf、geos、blend2d、libwebp、basisu、draco、libzip都可以依靠vcpkg自动下载编译。否则需要自己手动下载并编译,而且还要版本匹配,太麻烦了。

首先下载vcpkg

vcpkg下载地址
在这里插入图片描述
使用git获取vcpkg源码,
在这里插入图片描述
使用vs2019命令行工具生成vcpkg.exe
在这里插入图片描述

(1)cd 到 E:\osgEarth\vcpkg\vcpkg 也就是bootstrap-vcpkg.bat同级目录下
(2)执行 .\bootstrap-vcpkg.bat
这时会生成vcpkg.exe

在这里插入图片描述
(3)安装 vcpkg
使用命令:vcpkg integrate install
在这里插入图片描述

下载PowerShell7

这时需要下载PowerShell7,否则vcpkg会提示你PowerShell版本过低
(1)PowerShell下载地址
选择:PowerShell-7.2.0-win-x64.msi
在这里插入图片描述
(2)安装PowerShell

编译OsgEarth

根据OsgEarth官方文档一步步编译
osgEarth编译步骤官方说明
在这里插入图片描述
(1)使用vcpkg安装osgEarth依赖项 osg、gdal、curl

这里是使用PowerShell7命令行工具,在目录 E:\osgEarth\vcpkg\vcpkg 也就是vcpkg.exe同级目录:
在文件夹E:\osgEarth\vcpkg\vcpkg 空白处点击鼠标左键,选择“在Windows终端 预览版中打开”在这里插入图片描述
输入命令 : .\vcpkg install osg:x64-windows gdal:x64-windows curl:x64-windows
注意命令前面有"." !!! 点和右斜杠,
还要注意假设你这里能访问谷歌,你懂的
我这里已经安装好了:osg、gdal、curl,如果下载很慢,你可以直接复制PowerShell提示的下载地址,手动下载osg、gdal、curl,你收到下载的osg、gdal、curl 压缩包,直接复制到E:\osgEarth\vcpkg\vcpkg\downloads 目录下

在这里插入图片描述
(2)在PowerShell中使用vcpkg下载所有osgEarth依赖包

'\vcpkg install sqlite3:x64-windows protobuf:x64-windows geos:x64-windows blend2d:x64-windows libwebp:x64-windows basisu:x64-windows draco:x64-windows libzip:x64-windows
同样的,如果下载慢,我们就自己手动下载,按照PowerShell给出的地址下载就可以,然后下载好的这些依赖包,复制到E:\osgEarth\vcpkg\vcpkg\downloads 目录下

在这里插入图片描述
(3)下载OsgEarth源码
直接使用PowerShell下载osgEarth

git clone --recurse-submodules https://github.com/gwaldron/osgearth.git osgearth
在这里插入图片描述
创建osgEarth编译目录
mkdir build
后面生成的OsgEarth.sln工程就放在build目录下
在这里插入图片描述
(4)CMake命令生成工具链
就是我们平时使用CMake gui 生成osgEarth,但是直接使用CMake gui生成的工程配置依赖非常麻烦,还是用vcpkg帮助我们生成osgEarth工程

cmake -S osgearth -B build -G “Visual Studio 15 2017 Win64” -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWIN32_USE_MP=ON -DCMAKE_INSTALL_PREFIX=[installroot] -DCMAKE_TOOLCHAIN_FILE=[vcpkgroot]\scripts\buildsystems\vcpkg.cmake
如果你安装了vs2019的话,
注意:(1)这里要修改命令路径:Visual Studio 15 2017 Win64改成 Visual Studio 16 2019
也就是去掉 Win64
(2)installroot 修改成:E:\osgEarth\vcpkg\vcpkg\build
(3)[vcpkgroot]\scripts\buildsystems\vcpkg.cmake修改成你vcpkg.cmake的实际路径
我这里路径是:E:\osgEarth\vcpkg\vcpkg\scripts\buildsystems\vcpkg.cmake
在这里插入图片描述
所用这个命令修改成:cmake -S osgearth -B build -G “Visual Studio 16 2019” -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWIN32_USE_MP=ON -DCMAKE_INSTALL_PREFIX=E:\osgEarth\vcpkg\vcpkg\build -DCMAKE_TOOLCHAIN_FILE=E:\osgEarth\vcpkg\vcpkg\scripts\buildsystems\vcpkg.cmake
在这里插入图片描述
(5)生成OsgEarth.sln vs2019工程
cmake --build build --target INSTALL --config RelWithDebInfo
这里会等待半个小时左右,取决于你的机器速度

在这里插入图片描述(6)编译osgEarth工程
在这里插入图片描述

(7)生成osgEarth静态库和动态库
release版:osgEarth.lib和osgEarth.dll
在这里插入图片描述
在这里插入图片描述

debug版本 osgEarthd.lib和osgEarthd.dll在这里插入图片描述

在这里插入图片描述

Guess you like

Origin blog.csdn.net/aoxuestudy/article/details/121320483