GDAL源码编译(32位)
GDAL源码编译(32位)
前言
GDAL:GDAL/OGR 是一个地理空间数据的格式转换及处理工具。官网:https://www.gdal.org/
swig:SWIG是个帮助使用C或者C++编写的软件能与其它各种高级编程语言进行嵌入联接的开发工具。SWIG能应用于各种不同类型的语言包括常用脚本编译语言例如Perl, PHP, Python, Tcl, Ruby and PHP。
一、准备工作
1.下载最新版本的源代码https://github.com/OSGeo/gdal 并解压

2.下载swig:http://prdownloads.sourceforge.net/swig/swigwin-3.0.12.zip 并解压

3.通过CMD(管理员权限)打开vcvars32.bat
在cmd命令中输入: cd /d D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxiliary\Build


在cmd命令中输入:vcvars32.bata

在cmd中输入:cd /d E:\SvnWorkspace\LY_WEB_GIS\branches\Documents\gdal-master\gdal 定位到需要编译的源文件

4.修改gdal文件夹中的nmake.opt配置文件
4.1 根据你目前vs(vc++)使用环境来确定编译版本(你也可以通过命令来传递参数)

4.2 设置GDAL_HOME(编译后的lib,bin文件生成位置)

二、开始编译工作(c++)
1.在cmd中输入:nmake -f makefile.vc 开始编译 C++版本

编译完成

2. 在cmd中输入:nmake /f makefile.vc install 进入安装

安装成功

3. 在cmd中输入:nmake /f makefile.vc devinstall 安装开发环境

安装成功

三、编辑C#版本
1.在cmd中输入:cd swig\csharp
2.在cmd中输入:nmake /f makefile.vc (可能会错:NMAKE : fatal error U1073: 不知道如何生成“ogr_wrap.obj”)

3.在cmd中输入:nmake /f makefile.vc interface (可能是vc++中模板的遍历,具体如何运行的不大清楚,毕竟不是做c++开发)

4.重复再cmd中输入:nmake /f makefile.vc 再次编译为c#版本

编译成功

5.在cmd中输入:nmake /f makefile.vc install 直到编译完毕

对应文件夹产生的dll文件

GDAL源码编译(32位)的更多相关文章
- GDAL源码编译
转自阿Fai, GDAL源码编译 在这里,我使用源码编译出C#可以使用的dll静态文件. 一.简单的编译 1.简单的认识 首先进入GDAL的源代码目录,可以看到有几个sln为后缀的文件名,比如make ...
- hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档
相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...
- hadoop2.5发布:最新编译 32位、64位安装、源码包、API以及新特性
hadoop2.5发布:最新编译 32位.64位安装.源码包.API以及新特性 http://www.aboutyun.com/thread-8751-1-1.html (出处: about云开发) ...
- 将gdal源码转化为VS工程编译过程记录
作者:朱金灿 来源:http://blog.csdn.net/clever101 为什么要用VS工程的方式来编译gdal库?主要还是为了调试方便,虽然理论上使用命令行方式生成库也能调试,详见:GDAL ...
- Hadoop源码编译过程
一. 为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...
- Centos7.X 源码编译安装subversion svn1.8.x
说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...
- Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程
Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程 在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...
- Hadoop,HBase,Zookeeper源码编译并导入eclipse
基本理念:尽可能的参考官方英文文档 Hadoop: http://wiki.apache.org/hadoop/FrontPage HBase: http://hbase.apache.org/b ...
- 英蓓特Mars board的android4.0.3源码编译过程
英蓓特Mars board的android4.0.3源码编译过程 作者:StephenZhu(大桥++) 2013年8月22日 若要转载,请注明出处 一.编译环境搭建及要点: 1. 虚拟机软件virt ...
随机推荐
- cocos creator怎么隐藏组件(setVisible)
以 label 为例: this.label.node.active = fasle 隐藏节点this.label.ndoe.active = true显示节点
- CentOS 7 MariaDB-MMM
MariaDB-MMM高可用群集 1.MySQL-MMM概述 MMM(Master-Master replication manager for MySQL)是一套支持双主故障切换和双主日常管理的脚本 ...
- POJ 2154 color (polya + 欧拉优化)
Beads of N colors are connected together into a circular necklace of N beads (N<=1000000000). You ...
- Restful API接口调用的方法总结
restful 接口调用的方法 https://www.cnblogs.com/taozhiye/p/6704659.html http://www.jb51.net/article/120589.h ...
- 线程同步——lock锁
线程同步即解决线程安全问题的第三种方式——使用lock锁 代码实现: 其中,ReentrantLock是lock接口的实现类,这边是使用多态创建,访问成员方法时,编译看左,运行看右: Reentran ...
- oracle(3)
存储过程: CREATE OR REPLACE PROCEDURE PROC_ABC ( currency IN NUMBER, aysdate IN DATE, money OUT number ) ...
- zabbix 配置维护
Centos 6.5, Zabbix 3.0.4 在配置了邮件报警后,如果正常的软硬件变更(比如发版)也不停的发邮件肯定很烦,这个时候就需要在操作前挂上维护: 浏览器登录zabbix后台,Config ...
- Java Volatile关键字 以及long,double在多线程中的应用
概念: volatile关键字,官方解释:volatile可以保证可见性.顺序性.一致性. 可见性:volatile修饰的对象在加载时会告知JVM,对象在CPU的缓存上对多个线程是同时可见的. 顺序性 ...
- BZOJ 2759 一个动态树好题(动态树)
题意 https://www.lydsy.com/JudgeOnline/problem.php?id=2759 思路 每个节点仅有一条有向出边, 这便是一棵基环内向树,我们可以把它在 \(\text ...
- 智能合约 helloworld
windows 平台 所以直接使用Remix在线编译环境 新建hello.sol文件 编辑如下 Remix 右边侧栏 setting 选择合适的编译器版本 这里选择 0.4.19 文件中输入如下内容 ...