目录
一.研究背景
最近在研究GIS二维几何对象的空间关系时在网上查阅了好多资料,相关的资料和例子都特别少,于是一边摸索一边总结,将自己的研究过程和遇到的问题做个简单的记录,方便日后回顾学习,也方便大家彼此学习交流,因时间仓催和水平有限,在文章中不足之处希望大家随时留言,共同探讨,协同进步!
二 .环境搭建
2.1 geos库下载
我的环境是:win10/64位 + VS15开发环境
geos下载网站:http://trac.osgeo.org/geos/
我下载的是目前最新的3.8.0版本。下载后解压到本地的文件夹
2.2 库编译
2.2.1 VS命令编译
进入Visual Studio Tools下的VS2015 开发人员命令提示,依次执行如下命令
>VCVARS32.BAT >cd d:\tool\geos380 >atuogen.bat >nmake /f makefile.vc
2.2.2 CMake生成源代码编译
使用cmake生成源代码进行编译,具体编译方法不太明白可以查看我的另外一篇博文:Cmake在Window下的使用(附图文)
我将源代码生成在了E:\ToolProject\Geos目录下。
2.3 环境配置
编译成功后,会在目录下生成几个库文件
接下来,在VS中新建项目后,需要进行配置,只需要三处地方:
第一处:属性--配置属性---c/c++---常规,添加附加包含目录E:\Tool\geos380\include
第二处:属性--配置属性---链接器---常规,附加库目录:
debug下:E:\ToolProject\Geos\bin\Debug;
release下:E:\ToolProject\Geos\bin\Release
第三处:属性--配置属性---链接器--输入,附加依赖项,将lib静态库进行包含:geos.lib/geos_c.lib
将动态库
我这里为了做测试,为了方便所有的路径使用绝对路径,在正常的工作学习中一定要使用相对路径
配置好之后,就可以进行测试我们的环境是否搭建完成。
随便写一个测试代码进行验证,代码如下:
// GeoTest.cpp : 定义控制台应用程序的入口点。
//
#include <iostream>
#include <stdlib.h>
#include "geos.h"
using namespace std;
int main()
{
cout << "GEOS库版本为:" << GEOS_VERSION << endl;
system("pause");
return 0;
}
写好之后将对应的动态库geos.dll/geos_c.dll 拷贝到我们的生成的exe工程目录下。
输出结果为:
到此,环境搭建成功!!!!