GEOS是开源的空间运算引擎,最近用到,在这里记录下。

目录

GEOS简介

GEOS编译

一、GEOS简介

GEOS(几何引擎 - 开源)是一个具有完整空间查询和分析功能的C++库。它包括所有OpenGIS Simple Features for SQL(OGC)的空间谓词的功能和空间操作。2003年postGIS缺少一套完整的空间功能,就计划把具有空间功能的J​T​S​ ​T​o​p​o​l​o​g​y​ ​S​u​i​t​e 移植为C++版本。

J​T​S​ ​T​o​p​o​l​o​g​y​ ​S​u​i​t​e 是基于OGC简单要素规范的Java API项目。提供了全功能的,强大的,高效的空间操作的库。

二、GEOS编译

1、从官网链接,下载GEOS文件  http://download.osgeo.org/geos/geos-3.4.2.tar.bz2

2、转换为VS版本,VS2005、VS2010等

在windows上编译,如果没安装CMake2.8以上版本,在这里下载安装cmake-2.8.12.2-win32-x86.exe

新建 E:\geos-3.4.2\geos-3.4.2\build 作为编译的目标文件夹

C:\> cd E:\geos-3.4.2\geos-3.4.2\build
E:\geos-3.4.2\geos-3.4.2\build> cmake -G "Visual Studio 10 2010" E:\geos-3.4.2\geos-3.4.2

或者打开 CMake,如下

输入where is the source code 和Where to build the binaries

点击Configure,选择目标版本,然后点击Generate。

生成如下,点击geos.sln

3、编译VS2010版本

考虑debug和release 下lib文件可能需要放在一起,设置debug下lib文件名字为 **d.lib

编译通过后,然后就把dll、include,lib拷贝出来

lib文件:在目录E:\geos-3.4.2\geos-3.4.2\build\lib下

dll文件:E:\geos-3.4.2\geos-3.4.2\build\bin目录下

include:合并原始目录 E:\geos-3.4.2\geos-3.4.2\include 和新生成目录 E:\geos-3.4.2\geos-3.4.2\build\include(可以删除其中不是.h的文件)

GEOS编译的更多相关文章

  1. geos编译问题

    gdal编译geos的时候会用到geos_c_i.lib这个文件,我用cmake编译的时候仅仅产生geos_c.lib这个文件,所以只能使用nmake的编译方式来编译geos库,nmake编译geos ...

  2. 第一讲(3)osgearth编译

    前题条件完成osg 3.0的编译Step 1 下载osgEarth 2.1.1https://github.com/gwaldron/osgearth/downloads------------> ...

  3. osgEarth编译——以VS2012为例

    整理记录下 osgEarth编译过程. osgEarth是依赖于OSG的三维地理平台. 准备工作 OpenSceneGraph-3.4.0.zip OSG_3RDPARTY_DIR    http:/ ...

  4. GEOS/GDAL 交叉编译ARM64-linux版本

    目录 安装编译环境 编译PROJ.4 编译GEOS 编译GDAL 编译后程序运行注意事项 因为试用华为云ARM64服务器(CentOS 7 操作系统)的时候,在云服务器上编译GDAL很长时间也没有编译 ...

  5. GDAL集成GEOS

    因为要用到缓冲区分析,在使用Buffer的时候提示:ERROR 6: GEOS support not enabled,查了一下资料需要集成GEOS库.因为GDLA默认编译是没有集成GEOS库的. 现 ...

  6. OSGEARTH三维地形开源项目

    第一章   OSGEarth介绍 第二章   OSGEarth编译环境配置 OSGEarth的编译环境配置随着版本的不同.运行平台的不同,也有很大的差异.本章主要以Windows XP SP3(x86 ...

  7. OSGEarth环境搭建

    1.下载OsgEaarth2.8源码 https://codeload.github.com/gwaldron/osgearth/legacy.zip/osgearth-2.8 2.下载perl 编译 ...

  8. 编译带有PROJ4和GEOS模块的GDAL

    1.下载三个软件的源代码(去各自官网下载即可) 2.将PROJ4和GEOS的源码放到GDAL目录下的supportlibs文件夹中. 3.修改GDAL的nmake.opt文件,部分内容如下: # Un ...

  9. 使用VS2010编译64的Geos库

    Geos库在cmake中总是报错,所以我决定试试nmake编译64位的库.现将编译过程记录如下: 1.下载Geos,我下的是最新版3.5.0,地址在 http://trac.osgeo.org/geo ...

随机推荐

  1. MySQL8,登陆root后修改root密码的正确方式

    如题,·MySQL8以上的修改密码方式和5不一样 网上搜到的无用答案很多,这里记一下版本8的正确修改方式,也方便自己和他人 USE mysql; ALTER user 'root'@'%' IDENT ...

  2. [转] git merge 将多个commit合并为一条之--squash 选项

    [FROM] https://blog.csdn.net/themagickeyjianan/article/details/80333645 1.一般的做法(直接git merge) Git相对于C ...

  3. redis安全(加入密码)

    一.前言 在使用云服务器时,安装的redis3.0+版本都关闭了protected-mode,因而都遭遇了挖矿病毒的攻击,使得服务器99%的占用率!! 因此我们在使用redis时候,最好更改默认端口, ...

  4. 使用 json_serializable (flutter packages pub run build_runner build) 问题

    命令: flutter packages pub run build_runner build 使用 build_runner 生成 .g.dart 文件 flutter packages pub r ...

  5. mysql入门与进阶

    MySQL入门与进阶 需求:对一张表中的数据进行增删改查操作(CURD) C:create 创建 U:update 修改 R:read 读|检索 查询 D:delete 删除涉及技术:数据库 1.数据 ...

  6. java se系列(十一)线程

    1 线程的概述 进程:正在运行的程序,负责了这个程序的内存空间分配,代表了内存中的执行区域. 线程:就是在一个进程中负责一个执行路径. 多线程:就是在一个进程中多个执行路径同时执行. 图上的一键优化与 ...

  7. python 使用缓存加快运算

    from functools import lru_cache import time from functools import wraps def clock(func): @wraps(func ...

  8. javascript记住用户名和登录密码

    javascript记住用户名和登录密码 下面主要通过代码给大家展示下javascript记住用户名和登录密码,具体代码内容请看下文. <script type="text/javas ...

  9. 关于append,appendTo,prepend,prependTo的区别

    之前做项目对于这几个的方法总是有点模糊,尤其是prepend和prependTo; 1.append <style> span{ background:yellow; } .test{ b ...

  10. orcale 之 初识数据库一

    数据库 数据库顾名思义数据的仓库,只不过这个仓库是在计算机的存储设备之中.一般来说,这些数据面向一个组织,部门或者整个企业,这些数据是按照一定的模型进行存放的数据集合,比如对于一个学生的管理系统来说, ...