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. Navicat设定mysql定时任务

    有个需求:每天将一张表的前一天的数据抽取到另一张表中,使用Mysql数据库的客户端Navicat配置 第一步,创建过程cust_report,直接在查询窗口中执行,保存后函数列表中就会出现. 第二步, ...

  2. flutter dup get

    有很多 flutter library 中有两种导入方式 with dup: dup get 这种导入方式是需要依赖于 Dart SDK 下载 Dart SDK 地址:http://www.gekor ...

  3. selenium+Python(鼠标和键盘事件)

    本篇总结了 web 页面常用的一些操作元素方法,可以统称为行为事件有些 web 界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 1 简单操作 1.点击(鼠标左键)页面按钮 ...

  4. 自己用的opensuse源

    utsc_oss               http://mirrors.ustc.edu.cn/opensuse/distribution/13.1/repo/oss/utsc_non_oss  ...

  5. 【Lua】关于遍历指定路径下所有目录及文件

    关于Lua中如何遍历指定文件路径下的所有文件,需要用到Lua的lfs库. 首先创建一个temp.lua文件,用编辑器打开: 要使用lfs库,首先需要把lfs库加载进来 require("lf ...

  6. unity接入安卓sdk (unity调用安卓工程)

    1.安装jdk 并且配置环境,这个网上资料很多,这里不说了 2.安卓开发软件eclipse集成环境版 下载地址 http://tools.android-studio.org/index.php/ad ...

  7. C 标准库 - string.h之strcpy使用

    strcpy Copies the C string pointed by source into the array pointed by destination, including the te ...

  8. PHP中的PHP_EOL和DIRECTORY_SEPARATOR

    1. PHP_EOL是php中的换行符,跨平台 1.1.换行符: unix系列用 \n windows系列用 \r\n mac用 \r PHP中可以用PHP_EOL来替代,以提高代码的源代码级可移植性 ...

  9. OOP_由C到C++

    由C到C++ OOP第一课 C语言的局限 C++的特点 C++的程序特征 C++程序的结构特性 C++程序的编辑.编译和运行 ⭐C++对C的补充 C语言的局限 类型检查机制相对较弱,使得程序中的一些错 ...

  10. XmlSerialize

    以前配置文件都直接写在TXT文件,能看懂就行: 后来写了点代码,就把配置写在ini文件里: 再后来随着趋势就把配置类序列化到本地,即xml配置: 现在懒了,直接ToJson到本地,需要时FromJso ...