基本流程
编译与配置GDAL
编译与配置Zlib
编译与配置Cesium Terrain Builder
软件
CMake 3.16.3
visual studio 2015
资源(全部公开免费)
Cesium Terrain Builder 源码下载地址
GDAL-2.4.4 源码下载地址
zlib1.2.11 源码下载地址
编译与配置GDAL
GDAL的编译与配置是十分常见的操作,这里参考:
https://blog.csdn.net/qq_32153213/article/details/81363588
感谢该博主细致的描述
编译与配置zlib
虽然在windows下zlib提供了编译好的库,但内容与CTB所要求有出入,这里建议自行编译,参考该篇文章提供的方法2
https://www.cnblogs.com/MrOuqs/p/5751485.html
- 新建文件夹,命名为zlibPackage(用于存放编译后所得文件)
- 打开zlib源代码文件夹,复制zconf.h和zlib.h头文件至zlibPackage文件夹中
- 进入如下路径
zlib-1.2.11\contrib\vstudio\vc14
使用vs2015打开项目工程文件 zlibvc.sln
选择输出平台选择Debug x64,点击 生成->生成解决方案,开始编译。
常见的错误解决方法见上述文章
- 编译完成后在如下路径内得到 zlibwapi.dll和 zlibwapi.lib 将其复制到zlibPackage文件夹中
zlib-1.2.11\contrib\vstudio\vc14\x64\ZlibDllDebug
编译与配置CTB
主要参考如下链接:
https://www.jianshu.com/p/d8640841f2e1
- 新建文件夹,命名为CTB(用于存放cmake生成的VS2015项目)
- 新建文件夹,命名为CesiumTerrainBuilder(用于存放最终的CesiumTerrainBuilder应用)
- 打开cmake软件,选择source code为Cesium Terrain Builder源代码文件夹,选择where to build the binaries为CTB文件夹,勾选Advanced,点击Configure
- 配置配置GDAL_INCLUDE_DIR为GDAL编译后的include文件夹,GDAL_LIBRARY为GDAL编译后的 .lib 文件
- 配置ZLIB_INCLUDE_DIR是zlib动态库所在文件夹(即上文中的zlibPackage)
- 配置ZLIB_LIBRARY_DEBUG ,ZLIB_LIBRARY_RELEASE是zlib的 .lib 文件(即 zlibPackage 下的zlibwapi.lib 文件),配置完成后如下,点击Generate生成项目
- 进入CTB文件夹,打开Cesium Terrain Builder.sln 解决方案,点击生成。最终将下列目录内的所有文件拷贝至CesiumTerrainBuilder文件夹。完成编译
CTB\src\Debug
CTB\tools\Debug
检测安装是否成功
在CesiumTerrainBuilder文件夹内打开power shell命令行工具 输入如下命令
ctb-info.exe --version
若显示CesiumTerrainBuilder版本号,说明安装成功。
常见错误与解决方案
- 编译zlib时输出错误信息
error LNK2026: 模块对于 SAFESEH 映像是不安全的
解决方法参考如下链接
https://blog.csdn.net/zengraoli/article/details/11919307
- 编译CTB工具时弹出错误
无法打开源文件 unistd.h
解决方法参考如下链接
https://blog.csdn.net/Dashi_Lu/article/details/90054696
- 安装完成后运行命令行工具,输出如下错误信息并闪退
ERROR 4:Unable to open EPSG support file gcs.csv
解决办法为找到GDAL源代码文件夹,将如下路径添加至系统环境变量
gdal\gdal-2.4.4\data