[GDAL]GEOS和Proj4编译
geos-3.4.2.tar.bz2 http://trac.osgeo.org/geos/
proj-4.8.0.zip http://trac.osgeo.org/proj/wiki/WikiStart#Download
启动VS2010 x64兼容命令提示符
2.首先编译GEOS,进入Geos目录后
autogen.bat
nmake /f makefile.vc
编译debug版本
nmake /f makefile.vc BUILD_DEBUG=YES
说明F:\gdal\geos-3.4.2文件夹下的makefile.vc
# This makefile.vc delegates making targets to src\makefile.vc
# so it's just a thin wrapper.
#
# NMAKE Makefile to build GEOS on Windows
###############################################################################
# This makefile.vc delegates making targets to src\makefile.vc
# so it's just a thin wrapper.
#
# Building on Win32 with Visual Studio
# ------------------------------------
#
# ) Requires Visual C++ or later
# ) Build running command "nmake /f makefile.vc" in top-level directory
#
# Produces:
# src\geos.dll: DLL - only exports the C API
# src\geos_i.lib: Stub library to link against for use of geos.dll.
# src\geos.lib: static library for use of C or C++ API.
###############################################################################
GEOS_ROOT=.
!INCLUDE $(GEOS_ROOT)\nmake.opt default: src_dir src_dir:
cd src
$(MAKE) /f makefile.vc
cd .. clean:
cd src
$(MAKE) /f makefile.vc clean
cd ..
3.接着编译Proj4
nmake /f makefile.vc install-all
4.最后编译GDAL
首先说明下我的文件目录F:\gdal文件夹下将gdal-1.10.0、geos-3.4.2和proj-4.8.0放在一起
使用记事本或者其他的文本编辑器打开GDAL源代码目录下的nmake.opt文件,找到“# Uncomment for GEOS support”这句,大概在490行左右,将下面三行代码:
#GEOS_DIR=C:/warmerda/geos
#GEOS_CFLAGS =-I$(GEOS_DIR)/capi -I$(GEOS_DIR)/source/headers -DHAVE_GEOS
#GEOS_LIB =$(GEOS_DIR)/source/geos_c_i.lib
修改为:
GEOS_DIR=F:\gdal\geos-3.4.2
GEOS_CFLAGS = -I$(GEOS_DIR)/capi -I$(GEOS_DIR)/include -DHAVE_GEOS
GEOS_LIB = $(GEOS_DIR)/src/geos_c_i.lib
GEOS_DIR是geos-3.4.2编译后的文件夹路径:F:\gdal\geos-3.4.2。头文件主要在capi和include文件夹。
找到下面三行代码:
#PROJ_FLAGS =-DPROJ_STATIC
#PROJ_INCLUDE =-Id:\projects\proj.4\src
#PROJ_LIBRARY =d:\projects\proj.4\src\proj_i.lib
修改为:
#PROJ_FLAGS = -DPROJ_STATIC
PROJ_INCLUDE = -IF:\gdal\proj-4.8.0\src
PROJ_LIBRARY = F:\gdal\proj-4.8.0\src\proj_i.lib
不知道是不是我之前用中文路径的原因,开始编译时出了找不到geos_c.h的错误,然后我就改成现在的路径。
接下来的修改和编译按照http://www.cnblogs.com/yhlx125/p/3550957.html执行就可以了。
[GDAL]GEOS和Proj4编译的更多相关文章
- Win64下编译集成GEOS和Proj4的GDAL
目录 1.编译GEOS 2.编译Proj4 3.GDAL集成Proj4和GEOS 1) 修改安装的目录 2) 配置Proj4 3) 配置GEOS 4) 自定义动态库名称(可跳过) 5) 编译 1.编译 ...
- 使用GDAL/GEOS求面特征的并集
存在这样一个示例的矢量文件,包含了两个重叠的面特征: 一个很常见的需求是求取这个矢量中所有面元素的并集,通过GDAL/GEOS很容易实现这个功能,具体代码如下: #include <iostre ...
- GDAL使用插件方式编译HDF4、HDF5以及NetCDF的bug修改
GDAL库中提供了很方便的插件机制来扩展支持的数据格式,比如HDF4.HDF5.NetCDF.FileGDB.Postgre.Oralce等等.都可以通过插件的方式来使得GDAL支持相应的格式.最近将 ...
- GEOS库的编译
下载地址https://trac.osgeo.org/geos/ 选择最新的geos-3.6.2版本,下载 将geos-3.6.2放在VS2012文件夹下,本例是D:\VS2012 打开VS2012开 ...
- 编译带有PROJ4和GEOS模块的GDAL
1.下载三个软件的源代码(去各自官网下载即可) 2.将PROJ4和GEOS的源码放到GDAL目录下的supportlibs文件夹中. 3.修改GDAL的nmake.opt文件,部分内容如下: # Un ...
- GDAL编译(转)
一.简单的编译 1.使用VisualStudio IDE编译 首先进入GDAL的源代码目录,可以看到有几个sln为后缀的文件名,比如makegdal10.sln,makegdal80.sln,make ...
- LIUNX-Centos 7 编译GDAL
一.准备工作 安装编译环境 sudo yum install gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel zlib-dev ...
- GEOS库学习之五:与GDAL/OGR结合使用
要学习GEOS库,肯定绕不开地理方面的东西.如果需要判断的两个多边形或几何图形,不是自己创建的,而是来自shapefile文件,那就得将GEOS库和GDAL/OGR库结合使用了.实际上只需要OGR就行 ...
- GDAL集成GEOS
因为要用到缓冲区分析,在使用Buffer的时候提示:ERROR 6: GEOS support not enabled,查了一下资料需要集成GEOS库.因为GDLA默认编译是没有集成GEOS库的. 现 ...
随机推荐
- require(__DIR__ . "/../sss.php"
魔法函数 __DIR__ 是 php5.2以后新加的函数,返回当前文件所在的目录,返回的目录不带 \,所以上边的意思是:Require当前目录的父目录中的 sss.php
- JS页面跳转 神器! window.href window.open
window.open 打开页面, 网址为新的网址 window.href 为打开本网址的链接, 为网站URL+传入的URL
- 不再以讹传讹,GET和POST的真正区别
不再以讹传讹,GET和POST的真正区别 网上的多数答案都是错的 在 2012年05月03日 那天写的 已经有 19940 次阅读了 感谢 参考或原文 www.cnblogs.com 服务 ...
- 如何开启mysql计划事件
如何开启mysql计划事件 (2012-07-26 12:21:23) 转载▼ 标签: mysql 事件计划 it 分类: MySQL 首先在sql中查询计划事件的状态:SHOW VARIABLES ...
- C# Xml文件操作,解释见注释
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Bootstrap页面布局3 - BS布局以及流动布局
1. <h1 class='page-header'>布局<small> 使用bootstrap网格系统布局网页</small></h1> 得到如图所示 ...
- ease of rerouting traffic in IP networks without readdressing every host
https://en.wikipedia.org/wiki/Network_address_translation In the face of the foreseeable global IP a ...
- Machine Learning in Action -- 树回归
前面介绍线性回归,但实际中,用线性回归去拟合整个数据集是不太现实的,现实中的数据往往不是全局线性的 当然前面也介绍了局部加权线性回归,这种方法有些局限 这里介绍另外一种思路,树回归 基本思路,用决策树 ...
- ubuntu下各个软件完全卸载
1.卸载mysql sudo rm /var/lib/mysql/ -R删除mysql的数据文件2sudo rm /etc/mysql/ -R删除mqsql的配置文件3sudo apt-get aut ...
- Android中Intent组件详解
Intent是不同组件之间相互通讯的纽带,封装了不同组件之间通讯的条件.Intent本身是定义为一个类别(Class),一个Intent对象表达一个目的(Goal)或期望(Expectation),叙 ...