一、电脑配置及安装版本

Win 7(64位机)

Visual Studio 2010

GDAL 1.9.2(我也尝试了最新版GDAL1.11.0,应该同样可以用的,只是在重新配置时又选用了老一点的版本,资料多一些)

GEOS 3.3.8

二、 GEOS 配置

1) 参考文档:

2)GEOS与GDAL均属于静态库,只需要配置好,就可以在VS2010调用了。

3)特别注意:请将GEOS文件还有GDAL文件放在英文无空格目录下。因为这个原因,我尝试了好多次,先是放在C:\Program Files\GDAL下,提示好多错误;所以改为了C:\OGC\L下,在配置GDAL时就不会提醒错误了。

4)下载地址:

5)解压:

三、 GDAL配置

1)参考文档:

2)首先要修改makefile.opt文件,里面有许多可以修改的地方,根据自己情况配置了。我修改的地方如下:

a)修改GDAL生成文件目录,第53行:

!IFNDEF GDAL_HOME
GDAL_HOME = "C:\Program Files\GDAL192" !ENDIF !IFNDEF BINDIR BINDIR = $(GDAL_HOME)\bin !ENDIF

b)         修改Python安装目录,第77行:

!IFNDEF PYDIR

PYDIR   =       "C:\Program Files (x86)\Python27"

!ENDIF

c)         修改Java安装目录,第88行:

!IFNDEF JAVA_HOME

JAVA_HOME = C:\Program Files (x86)\Java\jdk1..0_07

!ENDIF

!IFNDEF ANT_HOME

d)         最重要的,将#去掉,配置为64位机下运行,第146行:

# Uncomment the following if you are building for -bit windows

# (x64). You'll need to have PATH, INCLUDE and LIB set up for 64-bit

# compiles.

WIN64=YES 得到

e)         配置GEOS,第二步配置完GEOS的文件放在C:\OGC\Geos\geos-3.3.8目录下,注意修改红颜色的文件,因为GEOS为最新版,所以可能目录不大一样;还有就是安装时,是左斜杠还是右斜杠,纠结了一会,最后如下:

# Uncomment for GEOS support

GEOS_DIR=C:\OGC\Geos\geos-3.3.

GEOS_CFLAGS = -I$(GEOS_DIR)/capi -I$(GEOS_DIR)/include -DHAVE_GEOS

GEOS_LIB     = $(GEOS_DIR)/src/geos_c_i.lib

3)         修改完makefile.opt,以管理员身份打开:开始>所有程序>Microsoft Visual Studio 2010>Visual Tools>Visual Studio X64兼容工具命令提示符

a)         cd C:\OGC\GDAL192\gdal-1.9.(你存放gdal解压文件的目录)

b)         nmake /f makefile.vc(配置文件,需要点时间,注意是否提示有问题,如果有问题,重新配置makefile.opt)

c)         nmake /f makefile.vc install(生成bin/html/data文件夹,也可能出现错误,同样重新配makefile.opt)

d)         nmake /f makefile.vc devinstall(生成lib/include文件夹)

e)         nmake /f makefile.vc MSVC_VER= DEBUG=(Debug调试模式,MSVC_VER对vs2008是1400,对于vs2010是1600)

f)          nmake /f makefile.vc clear (清理文件)

四、 GDAL在VS2010下使用

1)新建控制台文件,不要选择空文件。

2)         Demo代码如下:

#include "stdafx.h"
#include<iostream>
#include<string.h>
#include"gdal_priv.h" //#pragma comment(lib,"C:\\Program Files\\GDAL\\lib\\gdal_i.lib")
#pragma comment(lib,"gdal_i.lib") using namespace std; #define CharLength 100 int _tmain(int argc, char ** argv)
{
GDALDataset* poDataset;
GDALAllRegister(); char* FileName;
FileName=new char[CharLength];
cout<<"Input File Direction and Name:"<<endl;
cin>>FileName; //poDataset=(GDALDataset*)GDALOpen(argv[1],GA_ReadOnly);
poDataset=(GDALDataset*)GDALOpen(FileName,GA_ReadOnly);
if(poDataset!=NULL)
{
cout<<"RasterXSize:"<<poDataset->GetRasterXSize()<<endl;
cout<<"RasterXSize:"<<poDataset->GetRasterYSize()<<endl; } string a;
cout<<"A:"<<endl;
cin>>a;
}

3) 会提示找到函数,需要添加类库,打开项目属性>通用属性>C/C++>目录,更改包含文件(添加第三步生成的include文件夹)及库目录(添加第三步的lib文件夹)。同时在链接器>常规>附加库目录 添加lib文件夹,在输入>附加依赖项中添加lib文件夹下gdal_i.lib文件名。如下图:

4)这个时候调试会出现一大堆问题,这是因为没有配置64位机的缘故,如图:

5)  配置64运行环境,生成>配置管理器>活动解决方案平台>新建,添加名为x64的平台。运行提示缺少gdal19.dll

6) 将GDAL bin文件夹下的gdal19.dll 以及C:\OGC\Geos\geos-3.3.8\src目录下的geos_c.dll复制到程序目录文件下,运行,结果如下:

五、 总结

实验中也出现好多问题,自己是新手,想学学GDAL,想实现些算法。GDAL有许多版本,还有Python版,也希望能配置试一试。

这才是第一步,虽然很艰辛。希望以后能取得不错的成绩。

未完,待续!

活着意味着做点什么,请好好努力---村上春树

GDAL VS2010 win7(64位)安装、使用说明(图文解析)的更多相关文章

  1. VS2010 win7 64位安装后新建项目生成时错误:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏

    解决方案:VS2010在经历一些更新后,建立Win32 Console Project时会出“error LNK1123” 错误,解决方案为将 项目|项目属性|配置属性|清单工具|输入和输出|嵌入清单 ...

  2. Win7 64位安装MySQL

    1.Win7 64位 安装MySQL5.5版本 安装文件的执行:会提示“已经停止工作”: 2.我下载了mysql-installer-community-5.7.11.0.msi,可以安装成功,中途需 ...

  3. Win7 64位安装VS2013无法连接远程数据库

    win7 64位安装vs2013后连接远程数据库出现下面的问题:A first chance exception of type 'System.AccessViolationException' o ...

  4. win7 64位 安装java jdk1.8 ,修改配置环境变量

    下载jdk1.8,下载地址:http://www.wmzhe.com/soft-30118.html 安装时有两个程序,都安装在同一个目录下. win7 64位 安装java jdk1.8 ,修改配置 ...

  5. PLSQL Developer win7 64位 安装方法

    安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0).Win7 64位系统暂无PLSQLDeveloper,所以下一个32位的. 下载insta ...

  6. wamp安装xdebug特殊情况win7 64位安装32位wamp

    在wamp上安装xdebug网上很多文章都介绍了方法,但是我这里遇到了一个很特殊的情况,在网上很少有人提及: 我机器是win7 64位的,安装的wamp1.7.4是32位的,这是后来导致出现奇怪现象的 ...

  7. 【OSG学习笔记之一:】OSG+VS2010+win7 64位环境搭建

    虽然出生的时候,没有说过“Hello World!”,但是自从走上了编程之路,每一次输出“Hello World!”的时候,都觉得好比中了彩票大奖似的: 仔细算算,从2012年暑假到现在,经历了3年半 ...

  8. win7 64位安装mongodb及管理工具mongoVUE1.6.9.0

    下载mongodb安装程序,官网地址:http://www.mongodb.org/downloads 我的是64位win7,选择: 然后双击下载的文件安装,我安装到本地的D盘里面 然后配置系统环境变 ...

  9. win7 64位安装oracle10g客户端心得

    用了整整两天时间才在64位Win7下装好了Oracle的开发环境(包括Oracle的客户端和第三方客户端工具),过程原来和32位类似,注意不能下载64位的安装包. 安装过程: 1.下载Oracle 1 ...

随机推荐

  1. modelsim仿真中遇到的问题

    1.modelsim经常遇到数据位宽不相等的情况,这样往往仿真时是不会出数据的,如果用parameter定义了数据的位宽, 要注意实际的位宽数大于parameter定义参数能表示的位宽时,如: par ...

  2. Java 窗体居中 通用代码

    Toolkit kit = Toolkit.getDefaultToolkit();    // 定义工具包    Dimension screenSize = kit.getScreenSize() ...

  3. 理解Nodejs的Event Loop

    Node的“event loop”主要是用来处理高输出量的.这很神奇,这也是为什么node可以在单线程的情况下同时处理很多的后台操作.本文就会集中讲述event loop是怎么运行的,这样你可以可以使 ...

  4. 201709012工作日记--一台电脑创建两个Github账户上传代码

    1. 在一台主机上面使用多个GitHub账号 有时候,我们需要将个人账号和公司账号区分,这时候我们就会需要在一台电脑上使用2个不同的git账号. 2. 上传文件 http://blog.csdn.ne ...

  5. HDU 3472 混合图欧拉回路 + 网络流

    九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/13799337 题意: T个测试数据 n串字符 能否倒过来用(1表示能倒着用) 问 ...

  6. TCP/IP协议族分层

    协议族的分层抽象,一定意义上来说,每层敬职敬责的做自己的工作,同时也共同完成通讯协议的共同目标. 这是一个垂直划分的抽象层次,挺有意义. 1.链路层/数据链路层/网络接口层 操作系统中的设备驱动程序和 ...

  7. 前台ajax请求一次,后台代码执行了两次

    问题: 后台使用Django,前台发布文章时使用ajax方式,后台执行代码将data数据取出存入数据库 经过排查,是提交按钮type写成了submit,需要写成button,真是 修改后测试 代码执行 ...

  8. JS代码指导原则

    一.什么是平稳退化? 如果含有JS代码的网页在用户浏览器不支持JS(或者禁用JS)时,用户仍然能够顺利浏览(网站功能正常,只是视觉效果可能差一些),那么这个网页就能够平稳退化 网页能够平稳退化是很必要 ...

  9. Asp.net WebForm 中无法引用App_Code文件夹下的类

    在VS2013中新建asp.net webform应用程序,手动添加"APP_Code"文件夹并新建类文件,发现这些类无法在APP_Code文件夹以外被引用. 解决办法: 选中类文 ...

  10. C#将网页数据导出Excel时编码设置

    public void DGToExcel() { Response.ClearContent(); Response.Charset = "GB2312";//内容编码 Resp ...