mingw编译gdal20

mingwb编译gdal20

windows 32下mingw32编译 (联系方式 :Q:603398823)
先打开网址:

[转]使用MinGW编译GDAL的方法 - tedeum - ITeye博客
博客分类: 地理信息系统 GIS
 
原帖地址:http://bbs.osgchina.org/forum.php?mod=viewthread&tid=893
1、安装MinGW(tdm-mingw-1.812.0-f1.exe)、MSys(MSYS-1.0.10.exe)
2、解压gdal160.zip(假定将gdal160.zip解压到了D:\gdal160中)
3、打开MSys命令行,进入GDAL目录,如: cd /d/gdal160
4、./configure -prefix=/d/GDAL (该参数指定第6步中的安装路径)
5、make
      如果在链接时出现找不到“/d/gdal160/frmts/o/.libs/EnvisatFile.o”的错误,打开GNUmakefile文件修 改 6-12 行,用 . (英文句点)替换这几行中的“$(GDAL_ROOT)”,再执行make。也可以在执行make之前先对GNUmakefile文件进行上述修改后,再 执行make。
6、make install
7、make docs(可选,自动调用Doxygen生成html文档,必须先安装Doxygen)
8、make install-docs(可选,将上一步生成的文档拷贝到第4步指定的安装路径的doc文件夹中)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
注:如需生成python库,可以在configure时加--with-python参数,如“./configure --with-python”。也可以在/d/gdal160/swig/python下依次执行“setup.py build”和“setup.py install”。但在make时出现如下错误:
error: Python was built with Visual Studio 2003;
extensions must be built with a compiler than can generate compatible binaries.
Visual Studio 2003 was not found on this system. If you have Cygwin installed,
you can try compiling with MingW32, by passing "-c mingw32" to setup.py.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

阅读完成,知道一个大概。
上面是比较老的版本,今天是2018.1,我是windows开发,在CMake编译 OpenSceneGraph时候,要编译gdal,里面都是人家编译的vc版本的动态库,一开始遇到问题,怀疑是不是mingw不识别它们,于是想试试mingw编译gdal2.0
 参考了上面的资料后,我就下载mingw了,百度mingw管网,终于找到下面的下载地址
https://nchc.dl.sourceforge.net/project/mingw/Installer/mingw-get-setup.exe
下载了,安装发现跟上面的不一样,不管了,安装之后发现,它就个下载器,不要紧,下载,自己琢磨了下,左边选中“Basic Setup",然后在右边 右键mark列表里的所有的。
里面有个msys也要mark(这个mingw32的一个shell,一定要有,后面编译gdal就靠它了),然后点菜单栏中“Installatoin”->"Apply Change",这个时间有点长,是外网的,到安装目录,我的是“C:\MinGW\var\cache\mingw-get\packages”这里全是下载的包,等装完了,把“C:\MinGW\bin”和“C:\MinGW\msys\1.0\bin”两个添加到系统环境变量中,然后到系统的“开始”->mingGW->minGW32 Shell 打开,这玩意就是C:\MinGW\msys\1.0里msys.bat文件.
然后参考上面那哥们写的东东,谢谢这哥们
2、解压gdal160.zip(假定将gdal160.zip解压到了D:\gdal160中)
3、打开MSys命令行,进入GDAL目录,命令如: cd /d/gdal160 (我的是放C盘: cd  /c/gdal2.0)
4、./configure -prefix=/d/GDAL (该参数指定第6步中的安装路径),这个 " ."是要有的,嘿嘿,后面的 --prefix....什么我没加
5、make
      如果在链接时出现找不到“/d/gdal160/frmts/o/.libs/EnvisatFile.o”的错误,打开GNUmakefile文件修 改 6-12 行,用 . (英文句点)替换这几行中的“$(GDAL_ROOT)”,再执行make。也可以在执行make之前先对GNUmakefile文件进行上述修改后,再 执行make。这里的错误,我没遇到,没有修改gunMakefile,可能是新版本号的
6、make install
完了之后,再C:\gdal\.libs里,就出来了libgdal.dll.a ,libgdal-20.dll ,,一共6个,OK,我已经把编译好的gdal,用到openseceneGraph中去了,需要拷贝 libgdal.dll.a和 .dll文件,另外头文件在下面几个文件夹里:1.gcore 2.port 3.agl 4.org 5,org\ogrsf_frmts ,这上面4个文件夹所有头文件,不然编译osg会通不过。

我下一篇文章会说怎么编译osg,附带curl ,jpeg ,...还有osgearth

;