VS2005编译GEOS GDAL

VS2005 下进行 GEOS编译:

GEOS(Geometry Engine - Open Source) is a C++ port of the Java Topology Suite (JTS). As such, it aims to contain the complete functionality of JTS in C++.
编译步骤:

1、下载geos-3.0.0.tar.bz2 。下载地址为http://download.osgeo.org/geos/,进入网页后选择文件geos-3.0.0.tar.bz2下载到本机,例如E:\Software\GEOS\geos-3.0.0。


2、下载修正文件 geos-3.0.0.rc4-makefile-fix.zip。并将里面的两个文件dirlist.mk和Makefile.vc解压到E:\Software\GEOS\geos-3.0.0\source中,并覆盖原来的文件。注:如果没有这一步的话,会出现编译错误。

3、编译源文件。使用“Visual Studio 2005 命令提示”工具来进行,(该工具位于“开始\程序\Microsoft Visual Studio 2005\Visual Studio Tools”内)。打开“Visual Studio 2005 命令提示”工具,键入"cdE:\Software\GEOS\geos-3.0.0\source ",进入源文件所在的文件夹,再键入"nmake /f makefile.vc"执行编译。编译过程可能需要一些时间,主要取决于机器的性能。

4、编译完成。编译之后的geos.lib、geos_i.lib、geos_c_i.lib、geos.dll、geos_c.dll的文件被放在E:\Software\GEOS\geos-3.0.0\source中。

参考:http://wiki.woodpecker.org.cn/moin/lilin/geos-introduce

 

 

GDAL编译:

 

1、准备一个C++编译器。建议使用Visual studio2005。

2、下载源代码。

地址:http://download.osgeo.org/gdal/gdal150.zip。

3、把gdal150.zip解压至“C:\gdal-1.5.0”,当然放在其它文件夹也可以。

4、修改源代码中的错误。源文件“C:\gdal-1.5.0\frmts\leveller\levellerdataset.cpp”的第171行的内容如下:

{ "?, kPI / 180.0, UNITLABEL_DEGREE },

在?号后面加上双引呈",改成如下形式:

{ "?", kPI / 180.0, UNITLABEL_DEGREE },

你可以使用任何一种文本文件的编辑工具来进行修改。笔者尝试过下载GDAL1.52的版本,存在同样的问题,真想不到GDAL库也会犯如此低级的错误。

5、创建安装的目标文件夹“C:\gdal-runtime”,稍后的编译配置中,我们将配置GDAL把编译后将会安装到这个文件夹内。

6、修改编译配置文件夹“C:\gdal-1.5.0\nmake.opt”。以下是第41至第43行的内容:

!IFNDEF GDAL_HOME

GDAL_HOME = "C:\warmerda\bld"

!ENDIF

默认的情况下,GDAL将会安装到"C:\warmerda\bld"文件夹内,为了更好地了解安装过程,我们把第42行修改成如下内容:

GDAL_HOME = "C:\gdal-runtime"

7、编译源文件。使用“Visual Studio 2005 命令提示”工具来进行,(该工具位于“开始\程序\Microsoft Visual Studio 2005\Visual Studio Tools”内)。

打开“Visual Studio 2005 命令提示”工具,键入"cd C:\gdal-1.5.0",进入源文件所在的文件夹,再键入"nmake /f makefile.vc"执行编译。编译过程可能需要一些时间,主要取决于机器的性能。

如果没有第4步的修改,将会出现大量的编译错误,累积至100个后,VS2005将自动停止编译。

8、安装文件。

键入“nmake /f makefile.vc install”,执行完毕后,"C:\gdal-runtime"文件夹下增加了bin,data,及html文件夹。

键入“nmake /f makefile.vc devinstall”执行完毕后,"C:\gdal-runtime"文件夹下增加了lib,include文件夹。这两个文件夹主要用于C及C++的开发。

在"C:\gdal-runtime\bin"文件夹内已经生成了gdal15.dll文件,这是GDAL库的核心,不管采用何种开发方式,最终都由这个DLL文件来执行实质性的操作。

 

posted @ 2011-11-23 14:11  bigbigtree  阅读(922)  评论(0编辑  收藏  举报