查看: 8088|回复: 5

如何用MinGW编译GDAL?[ 已解决!]

[复制链接]

该用户从未签到

发表于 2008-12-23 20:39:59 | 显示全部楼层 |阅读模式
我在网上搜到的几乎都是用MSVC编译GDAL,自己试着用MinGW编译老是不成功。看了一下GDAL官网上的说明,也下载安装了Msys,并按上面所说的方法编译了,可还是通不过。老是说找不到一个.o文件,可这个文件我看了已经生成了,也在相应的目录下啊,可就说找不到,不知道是什么原因。我又试了一下用MSVC编译,能通过没问题啊?是不是MinGW要进行什么环境设置啊?请高手指教。
VC2008编译通过;MinGW我用了官网的5.1.4和TDM发布的都通不过。

[ 本帖最后由 x_wp 于 2008-12-28 17:07 编辑 ]

该用户从未签到

发表于 2008-12-24 13:43:17 | 显示全部楼层
这个我没有试过,,,你可以试试把.o文件拷贝出来,,,然后设置到目录下重新编译,,有时候编译要注意顺序的~~~~~

该用户从未签到

 楼主| 发表于 2008-12-25 20:53:52 | 显示全部楼层
GDAL编译成功了,可用MinGW编译OSG2.7.8又通不过了,唉!
回头把MinGW编译GDAL的方法及成果发到文件中转站中。

该用户从未签到

 楼主| 发表于 2008-12-28 16:40:44 | 显示全部楼层
使用MinGW编译GDAL的方法

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.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

该用户从未签到

 楼主| 发表于 2008-12-28 17:07:24 | 显示全部楼层
我用TDM的MinGW和VC2008分别编译了GDAL 1.60和PROJ  4.6.1。
编译成功的文件已上传到文件中转站中

该用户从未签到

发表于 2009-11-17 19:06:54 | 显示全部楼层
我也编译过,不过间接用的是codeblock,没有直接用mingw,我编译时也写了些东西,比较乱,不过好久了,自己都搞不清什么时候了,希望对大家有用,下面既是:

http://www.gdal.org/

--------mingw编译
gdal编译,用msys编译出错,
打开codeblock,import gdal.sln 右键设为活动工程,保存

还是用msys编译,网上有教程
http://trac.osgeo.org/gdal/wiki/BuildingWithMinGW
修改
Edit GNUmakefile on lines 6-12 and replace $(GDAL_ROOT) with . (a dot).
ok
生成的工具.exe,全在 gdal/apps 下,而gdal/apps/.libs 下的.exe等同于apps下,所以用apps下就行
上行错: apps下的.exe不等同与.libs下的,文件名一样,大小不一样,apps下的不能执行,所以必须用.libs下的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表