GDAL在CSharp中的应用---编译[原]
一、准备工作:
-
- 准备编译环境:Visual Studio 2010
- 下载GDAL源码:http://trac.osgeo.org/gdal/wiki/DownloadSource (下载1.8版,目前为止的最新版)
- 下载Swig程序:http://www.swig.org/ (下载1.3.39版,其它版本可能会有些问题,有很多编译不成功的问题就出在版本的问题上,我也是编译了好多次才发现的,所以在这里特别提醒下)
解压下载下来的文件,并重命名,我的目录设置如下 :
二、配置GDAL编译文件
打开GDAL源文件根目录下的namke.opt文件
E:\Study\GDAL\gdal180\nmake.opt
1、设置编译后目标文件存放目录
!IFNDEF GDAL_HOME
GDAL_HOME = "C:\warmerda\bld"
!ENDIF
!IFNDEF BINDIR2、设置GADL CSharp封闭器程序目录
# Set the location of your SWIG installation
!IFNDEF SWIG
SWIG =E:\Study\GDAL\swigwin1339\swig.exe
!ENDIF三、编译GDAL文件
1、打开Vs 2010 命令行工具(所有程序----Microsfot Visual Studio 2010\Visual Studio Tools\Visual Studio 2010 命令提示工具)
2、将目录切换到GADL根目录下
3、运行namake /f makefile.vc 编译GDAL
4、编译完成,显示输入命令提示后,运行nmake /f makefile.vc install 命令,执行安装。
运行该命令后会在,GDAL目标文件存放目标目录(在GADL源码文件根目录下的,nmake.opt文件中设置的目录)下生成bin、html 、Data等目录,在Bin目录下有gdal18.dll动态链接库文件,这个文件是GDAL的核心库
5、上一步聚编译完成后,运行nmake /f makefile.vc Devinstall 命令,生成非托管开发的程序库文件之类的东东,此时GDAL目标文件目录下会生成include之类的目录
四、编译生成CSharp托管程序的GDAL
1、在命令行工具中,将目录切换到swig\Csharp目录下
2、运行namke /f makefile.vc interface命令
期间可能会出现一些警告和错误提示,警告就不用管他了,错误基本上是方法重复定的错误,只要根据提示找到相应的文件(一般都是在Swig\CSharp目录下的),把重复项注释掉就可以了
3、运行namke /f makefile.vc 完成CSharp托管库的编译
此时在GDAL 源码文件夹目录下的Swig\CSharp \目录下会出现一些动态链接库和一些可执行文件,其中有四个是以*_Csharp.dll命名的,这些就是CSharp开发GDAL程序所要引用的库,当然还要包括目标目录下的GDAL.dll文件。
五、环境变更设置的相关说明
为了方便开发,可以设置环境变量, 说明动态链接库所在目录,当然也可以不用添加,直接将相关库文件添加到我们编写的程序所在目录下就可以了,只要程序能找到这些库就行。
获取GDAL库的方式不一定非得自己编译,也可以下载FWTools,从中获取。