GDAL在C#中如何编译、安装以及使用简介

 

编译准备……
1.Gdal
压缩包
2.
修改。

修改Gdal中的bug

gdal\frmts\leveller\levellerdataset.cpp文件171

{ “?, kPI / 180.0, UNITLABEL_DEGREE },

“ “? ”修改为“ ”? “ ”,保存;

 
修改Gdal根目录下的nmake.opt文件:

MSVC_VER=1500(即选择VS2008);GDAL_HOME=“YourDir”
YourDir
为你自己建立的用于存放编译生成的文件的地方,自行定义;

修改部分结束


修改完毕,编译真正开始
1.
打开VS 2008命令行,定位到Gdal所在的文件夹; (或者cmd,到vc目录下运行vcvars32.bat)
2.到gdal目录下,运行nmake /f makefile.vc;
3.下面是:nmake /f makefile.vc install;
4.接着:nmake /f makefile.vc devinstall,
这步完成后GDAL_HOME处生成一系列的文件,其bin目录下会有gdal16.dll,gdal版本而定。
5.
定位到gdal目录下的csharp文件夹。
6.敲入nmake /f makefile.vc,
这步完成后会在csharp目录下生成8dll文件。将这8个文件拷贝到gdal16.dll 所在位置(见第4步)。

将四个*_CSharp.dll在项目中“添加引用”添加进来,其余gdal16.dll和另外四个编译C#时生成的dll文件拷贝到项目的debug下。即可。

如果不把dll文件拷贝到debug下,将出现下面错误:
“OSGeo.OGR.Ogr”的类型初始值设定项引发异常这样的问题。   


这个问题是dll不全造成的,除了要引用的4dll外,还有5dll也要放到Debug目录下。
在编译C#下的gdal时,总共生成了9dll,在编译的本机上,程序是通过环境变量path找到另外的几个dll的。
在没有编译过gdal的电脑上,反正就把这9个编译后的dll放到debug下面就一切Ok
如果要编译后的这9dll,可以邮件向我要

上面回答来自http://www.cnblogs.com/webgis8/archive/2009/07/19/1526425.html

 

 

posted @ 2009-12-03 19:52  gisbingxin  阅读(4423)  评论(1)    收藏  举报