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的编译。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Ubuntu上编译安装PostGIS,你可以按照以下步骤进行操作: 1. 首先,你需要下载源码文件。可以使用wget命令来下载PostGIS的源码文件,例如: ``` wget http://www.postgis.net/stuff/postgis-2.3.8dev.tar.gz ``` 2. 然后,你需要解压缩下载的源码文件。在终端中运行以下命令: ``` tar xvfz postgis-2.4.8dev.tar.gz ``` 3. 进入解压缩后的目录。在终端中运行以下命令: ``` cd postgis-2.4.8dev ``` 4. 使用configure命令配置编译选项。你需要指定依赖包的位置,确保系统能够找到它们。以下是一个示例配置命令: ``` ./configure --prefix=/opt/postgis-2.2.8 \ --with-pgconfig=/usr/local/pgsql/bin/pg_config \ --with-gdalconfig=/opt/gdal-2.4.0/bin/gdal-config \ --with-geosconfig=/opt/geos-3.5.1/bin/geos-config \ --with-xml2config=/opt/libxml2-2.9.0/bin/xml2-config \ --with-projdir=/opt/proj-4.9.2 \ --with-jsondir=/opt/json-c-0.13.1 ``` 5. 使用make命令编译源码。在终端中运行以下命令: ``` make ``` 6. 最后,使用make install命令将编译完成的程序安装到指定目录。例如: ``` make install ``` 完成以上步骤后,PostGIS将成功编译并安装在你指定的目录中。请确保在配置命令中正确指定了依赖包的位置,并根据实际情况进行调整。编译安装过程可能会遇到一些问题,你可能需要解决这些问题才能成功完成安装。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值