osgearth 2.10编译 无法连接PostGIS的问题
将osgearth从2.9升级为2.10时,发现用earth文件无法链接到PostGIS。经过两天的折腾,发现下载并编译的gdal库对Posggresql不是默认支持的,需要在编译gdal库之前将Postgresql中的include和libpq.lib加入到nmake.opt文件中。以gdal 2.2.4为例,详细步骤如下:
1. 打开GDAL源码中的nmake.opt文件,修改如下
- 第64行的代码修改为:GDAL_HOME= “E:\osg3.6+osgearth2.10\3rdParty_x64\gdal224”
修改后,gdal将安装到此目录。
2. 增加PostGIS支持,定位到PostGIS
# PostGIS Libraries
PG_INC_DIR = “E:\Program Files\PostgreSQL\9.6\include”
PG_LIB = “E:\Program Files\PostgreSQL\9.6\lib\libpq.lib” wsock32.lib
3.编译和安装gdal
打开VS2017的X64的本机工具命令提示
- nmake -f makefile.vc MSVC_VER=1910
- nmake /f makefile.vc install
- nmake /f makefile.vc devinstall
3. 复制libpq.dll
将C:\Program Files (x86)\PostgreSQL\9.6\bin\postgisgui目录下的libpq.dll和libintl-8.dll文件拷贝到GDAL编译生成的目录,E:\osg3.6+osgearth2.10\3rdParty_x64\gdal224。
4. 测试是否成功安装
通过命令行到E:\osg3.6+osgearth2.10\3rdParty_x64\gdal224\bin 目录下运行 ogrinfo.exe –formats
5. 用编译后的gdal库进行ogearth的编译。
转载自:https://blog.csdn.net/ydongying/article/details/86606387