【C#】C#中使用GDAL3(一):Windows下超详细编译C#版GDAL3.3.0(V。。。.pdf

【C#】C#中使用GDAL3(一):Windows下超详细编译C#版GDAL3.3.0(V。。。.pdf

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

【C#】C#中使⽤GDAL3(⼀):Windows下超详细编译C#版

GDAL3.3.0(V。。。

总⽬录

(⼀)Windows下超详细编译C#版GDAL3.3.0(VS2015+.NET4+32位/64位)

(⼆)Windows下读写Shape⽂件及超详细解决中⽂乱码问题

本⽂为《C#中使⽤GDAL3》的第⼀篇。

本⽂⽬录

⼀、介绍

⼆、编译准备

三、编译SQLite

四、编译LibTiff

五、编译PROJ

六、编译GDAL

七、编译C#接⼝

⼋、编译结果

九、C#调⽤测试

⼗、编译Debug版GDAL

⼀、介绍

GDAL是⼀个开源的栅格和⽮量空间数据操作库。它使⽤单⼀的抽象数据模型和驱动模式,⽀持⼤多数的栅格和⽮量空间数据的操作,

从⽽不再依赖固定的类库(如ArcEngine等)。

⼆、编译准备

GDAL是基于C++编写的,故编译需要⼀定的依赖库。依赖关系如下(来⾃于各库⽹站的requirement):

1)GDAL最新版3.3.1:依赖PROJ=6;依赖VC++=1900(即=2015);依赖SQLite3

2)PROJ6最新版6.3.2:依赖SQLite3=3.11;依赖CMake=3.9

3)PROJ7最新版7.2.1:依赖SQLite3=3.11;依赖libtiff=4.0;CMake=3.9;可选curl=7.29.0

基于以上情况,确定编译需要的⽂件如下:

a)SourceCode:sqlite-amalgamation-3360000.zip

b)PrecompiledBinariesforWindows:sqlite-dll-win32-x86-3360000.zip(32位dll)、sqlite-dll-win64-x64-

3360000(64位dll)、sqlite-tools-win32-x86-3360000.zip(可执⾏程序)

环境及⼯具

1)安装VS2015:需含VC++功能1)安装VS2015:需含VC++功能

三、编译SQLite

根据依赖关系,先编译SQLite3。

1、解压⽂件

32位:把sqlite-amalgamation-3360000.zip、sqlite-tools-win32-x86-3360000.zip、sqlite-dll-win32-x86-3360000.zip三32位:把sqlite-amalgamation-3360000.zip、sqlite-tools-win32-x86-3360000.zip、sqlite-dll-win32-x86-3360000.zip三

64位:把sqlite-amalgamation-3360000.zip、sqlite-tools-win32-x86-3360000.zip、sqlite-dll-win64-x64-3360000.zip三64位:把sqlite-amalgamation-3360000.zip、sqlite-tools-win32-x86-3360000.zip、sqlite-dll-win64-x64-3360000.zip三

2、新建VC++项⽬2、新建VC++项⽬2、新建VC++项⽬

3、项⽬添加⽂件3、项⽬添加⽂件

4、修改sqlite3.def

双击sqlite3.def,在⽂件的最后添加sqlite3_unlock_notify后保存。

5、设置项⽬属性5、设置项⽬属性5、设置项⽬属性5、设置项⽬属性5、设置项⽬属性

_USRDLL

SQLITE_ENABLE_RTREE

SQLITE_ENABLE_COLUMN_METADATA

SQLITE_ENABLE_FTS5

SQLITE_ENABLE_UNLOCK_NOTIFY

6、编译⽣成sqlite.lib6、编译⽣成sqlite.lib

的Release⽂件夹下会⽣成sqlite.lib。

7、构造结果⽂件夹7、构造结果⽂件夹

1)include:sqlite3.h、sqlite3ext.h

2)bin:sqlite3.exe

3)lib:sqlite.lib

文档评论(0)

单元金卷 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档