麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

Win7(32/64)VS2010配置编译GDAL环境(图文教程+亲测可用!)

最近的一个VS2010的项目中用到了GDAL,关于GDAL这个库的说明与赞美,这里就不赘述了,下面是在VS2010中配置GDAL的详细过程。

系统说明

Win7(32位/64位),VS2010,GDAL 1.10.1(截止本文发布的最新版),进行下面的操作之前,请确保您已经正确安装了VS2010,步骤如下:

1.下载GDAL

点击进入GDAL的官方下载页面,根据需要选择不同的版本,根据测试之前的GDAL1.9.1 0往后的版本均可以按照本文的方法编译成功。下载完成后解压到一个根目录下,因为这样后面的操作会比较方便,本文所解压的地址为

D:\gdal-1.10.1

如果你解压的地址跟本文不同,可以按照实际情况做出修改。

2.执行VCVARS32.BAT

以管理员身份运行cmd,(您可以在开始菜单搜索cmd,然后右击选择用管理员身份运行,也可以在C:\windows\system32下找到cmd.exe右击选择采用管理员身份运行),如图:

然后在cmd中切换到VS2010的安装目录,例如本文中的是

C:\program files\Microsoft Visual Studio 10.0\VC\bin

执行VCVARS32.BAT,如图:

3.编译GDAL

在cmd中切换目录到

D:\gdal-1.10.1

目录下,运行如下命令

nmake /f makefile.vc

编译过程可能需要几分钟,根据系统的配置而定,如图

4.设置输出目录

找到下载目录中的nmake.opt文件,例如本文的中的文件路径为:

D:\gdal-1.10.1\nmake.opt

用文本编辑器(建议使用现代化文本编辑器例如notepad++)打开修改GDAL_HOME的值为安装目录。本文中使用的目录如下:

GDAL_HOME = "D:\GDAL"

如图:

5.安装GDAL

回到CMD界面,切换到解压目录(本文的是D:\gdal-1.10.1)下,执行如下两条命令:

nmake /f makefile.vc install
nmake /f makefile.vc devinstall

如图所示:

先执行nmake /f makefile.vc install

再执行nmake /f makefile.vc devinstall

等待一段时间之后,GDAL就算真正的编译完成了,这时候打开步骤4中设置的安装目录,需要的东西就在里面了,有bin,data,html,lib,include几个文件夹。如图所示:

安装完成以后需要在VS2010的项目中配置GDAL,具体方法情看:VS2010中项目配置引入GDAL

6.其他方法

Windows下,cmd定位至gdal目录,运行makegdal_gen.bat生成.vcproj,然后打开生成即可;Linux下,terminal定位至gdal目录,运行./configure,然后运行make命令即可,如需安装,运行sudo make install。 来自@hao,也可以测试下。

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

已有 28 条评论

  1. 麻辣GIS-寻找那天
    1#
    寻找那天  · 2014-04-16 17:04

    谢谢,成功了!

      1. 麻辣GIS-木丁西
        木丁西  · 2014-04-16 17:07

        嘿嘿,不客气~

      2. 麻辣GIS-hello
        hello  · 2016-09-01 16:10

        你好,编译生成的bin里面的exe为什么会一闪而过呀?

  2. 麻辣GIS-淡淡的忧桑
    2#
    淡淡的忧桑  · 2014-08-12 11:50

    太感谢了!!!

      1. 麻辣GIS-木丁西
        木丁西  · 2014-08-18 20:47

        不谢~嘿嘿

  3. 麻辣GIS-che
    3#
    che  · 2014-10-23 09:51

    请问配置好后添加头文件,为什么总是提示无法找到呢?急急急急

  4. 麻辣GIS-CHE
    4#
    CHE  · 2014-10-23 09:53

    请问为什么配置好后添加头文件但总提示找不到呢?急急急

      1. 麻辣GIS-Sailor
        Sailor  · 2014-10-28 21:56

        参考http://malagis.com/vs2010-project-configuration-gdal.html,我这里是可以的

  5. 麻辣GIS-wxc680
    5#
    wxc680  · 2015-04-17 23:09

    请问为什么它不能成功识别.BAT文件路径?

      1. 麻辣GIS-麻辣GIS
        麻辣GIS  · 2015-04-17 23:23

        你的路径是不是有空格?

  6. 麻辣GIS-wxc680
    6#
    wxc680  · 2015-04-18 11:11

    编译gdal只能用vs20##软件吗?vc++6.0 不行吗?

      1. 麻辣GIS-麻辣GIS
        麻辣GIS  · 2015-04-18 14:09

        应该也可以,你去GDAL的官网看看,有没相应的支持版本。

  7. 麻辣GIS-wxc680
    7#
    wxc680  · 2015-04-18 21:00

    .站长,小弟觉得您的方法有纰漏,下面是我搜到的方法以管理员身份运行Visual Studio x64 兼容工具命令提示(2010)http://m15989223765.blog.163.com/blog/static/233430095201421725748335/真诚感谢站长的帮助

  8. 麻辣GIS-giser
    8#
    giser  · 2015-09-29 11:19

    我想问下我编译最后两行的时候总是出现两个错误
    Fatal error LNK1181和fatal error U1007 返回值0x49d
    有解决方法么

      1. 麻辣GIS-aaa
        aaa  · 2018-10-24 11:11

        同问呀 请问解决了没有?

  9. 麻辣GIS-竹子
    9#
    竹子  · 2015-11-23 23:05

    你好,我现在在vs2010c++项目里用gdal打开图像,自己电脑可以正常打开,换别的电脑就打不开了,不是报错,就是打开的图像为空,这是为什么呀?谢谢

  10. 麻辣GIS-韩枫
    10#
    韩枫  · 2017-03-30 20:38

    编译时候出现这个

    cd ..
    if exist gdal.lib del gdal.lib
    lib /nologo /out:gdal.lib port\*.obj gcore\*.obj alg\*.obj frmts\o\*.obj
    ogr\ogrsf_frmts\ogrsf_frmts.lib ogr\ogr.lib
    nitf_gcprpc.obj : warning LNK4221: 此对象文件未定义任何之前未定义的公共符号,因
    此任何耗用此库的链接操作都不会使用此文件
    cpl_recode_iconv.obj : warning LNK4221: 此对象文件未定义任何之前未定义的公共符号
    ,因此任何耗用此库的链接操作都不会使用此文件
    link /nologo /dll /INCLUDE:_OGRFeatureStylePuller /INCLUDE:_OSRValidate
    /INCLUDE:_OPTGetProjectionMethods /INCLUDE:_OGR_G_GetPointCount /INCLUDE:_OG
    RRegisterAll /INCLUDE:_GDALSimpleImageWarp@36 /INCLUDE:_GDALReprojectImage@48
    /INCLUDE:_GDALComputeMedianCutPCT@32 /INCLUDE:_GDALDitherRGB2PCT@28 /INCLUDE:_
    OCTNewCoordinateTransformation@8 port\*.obj gcore\*.obj alg\*.obj frmts\o\*.obj
    ogr\ogrsf_frmts\ogrsf_frmts.lib ogr\ogr.lib
    odbc32.lib odbccp32.lib user32.lib ws2_32.lib gcore\Versio
    n.res /out:gdal110.dll /implib:gdal_i.lib
    正在创建库 gdal_i.lib 和对象 gdal_i.exp
    LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
    NMAKE : fatal error U1077: “"D:\Program Files (x86)\Microsoft Visual Studio 10.
    0\VC\BIN\link.EXE"”: 返回代码“0x463”
    Stop.

  11. 麻辣GIS-Jessica
    11#
    Jessica  · 2017-11-20 20:25

    请问VS2017可以用吗,按照您的步骤,显示的是
    error:LNK2019:无法解析的外部命令,
    NMAKE:fatal error U1077:“D:\VS2017\VC\Tools\MSVC\14.11.25503\bin\HostX86\x86\link.EXE":返回代码“0x460”
    而且在GDAL的安装目录里并没有生成bin、data等文件夹

  12. 麻辣GIS-小破地
    12#
    小破地  · 2019-06-19 16:16

    为啥在执行nmake /f makefile.vc 的时候报错啊,提示fatal error U1050......脑阔疼

      1. 麻辣GIS-Sailor
        Sailor  · 2019-06-20 20:44

        1050后面是啥,你隐藏了关键信息。。

          1. 麻辣GIS-小破地
            小破地  · 2019-06-21 19:13

            报错内容是这个:makefile.vc(6) : fatal error U1050: PROJ_INCLUDE should be defined. PROJ >= 6 is a required dependen

              1. 麻辣GIS-Sailor
                Sailor  · 2019-06-21 20:33

                是不是要安全PROJ?

                  1. 麻辣GIS-小破地
                    小破地  · 2019-06-23 00:12

                    不知道诶,安全proj是什么呀

                  2. 麻辣GIS-Sailor
                    Sailor  · 2019-06-23 23:30

                    不好意思回复错了,这个提示感觉像是系统中应该安装PROJ,是一个开源的库。

                  3. 麻辣GIS-小破地
                    小破地  · 2019-06-26 11:48

                    哦哦,貌似确实没有装这个东西,那我去试试,嘻嘻

              2. 麻辣GIS-123
                123  · 2019-07-05 16:10

                你好 请问你的问题解决了吗

                  1. 麻辣GIS-小破地的大水皮
                    小破地的大水皮  · 2019-07-07 10:28

                    嗯嗯,谢谢指导,应该是我电脑的系统出了问题导致很多插件啊驱动啊权限啊都没有了,重装之后很顺利呢!非常感谢配库教程!!

留言板(小编看到第一时间回复) 取消回复