linux编译gdal geos,使用nmake编译GDAL+GEOS(傻瓜教程)
一、编译GEOS库
(1)
nmake编译
1、解压源码,如E:\geos3.5.2\geos-3.5.2路径下
2、修改nmake.opt文件,若编译64位库,需打开geos-3.7.1文件夹中的nmake.opt文件,将WIN64
= NO改为WIN64 =
YES;32位无需修改。若编译Debug库,则将nmake.opt中的BUILD_DEBUG
= NO改为BUILD_DEBUG =
YES;Release无需修改。
3、打开VS的工具命令提示,若编32位则打开VS2013
x86 本机工具命令提示,若编64位则打开VS2013 x64
本机工具命令提示。并进入geos路径下,如cd
E:\geos3.5.2\geos-3.5.2
4、依次在命令行输入autogen.bat和nmake /f
makefile.vc进行编译
5、编译成功后,会在E:\geos3.5.2\geos-3.5.2\src目录下生成geos.lib,
geos_i.lib, geos_c_i.lib, geos.dll,
geos_c.dll等五个文件。该生成的文件可以接着用来生成GDAL库
(2)
cmake-gui编译
1、打开cmake-gui,将CMakeLists.txt拖入其中,设置编译路径,点击configure按钮。
2、设置CMAKE_INSTALL_PREFIX,即输出路径,后续编译好的bin、include、lib都会生成在该路径中。点击configure按钮,若无报错点击generate按钮。
3、打开设置的编译路径,用VS打开工程,进入批生成,选择ALL_BUILD和INSTALL(release和debug可以按需生成),点击生成即可。
4、编译完成后在输出路径有bin、include、lib文件夹,可以提供给其他人员使用。
二、编译GDAL库
(1)
在GEOS库用nmake编译的基础上。
(2)
修改nmake.opt,修改GDAL_HOME路径,如GDAL_HOME
=
"E:\gdal\gdal202\install";修改geo库依赖,首先将GEOS库前的注释去掉,分别设置GEOS_DIR、GEOS_CFLAGS和GEOS_LIB,其中GEOS_CFLAGS需要改为-I$(GEOS_DIR)/capi
-I$(GEOS_DIR)/include
-DHAVE_GEOS。特别说明,设置的GEOS_DIR路径中不能有空格,设置完成后如下所示:
GEOS_DIR=
E:\geos3.5.2\geos-3.5.2
GEOS_CFLAGS = -I$(GEOS_DIR)/capi
-I$(GEOS_DIR)/include -DHAVE_GEOS
GEOS_LIB = $(GEOS_DIR)/src/geos_c_i.lib
(3)为了生成带后缀d的debug库,需要做如下修改
在nmake.opt中(100行处)添加
!IFDEF
DEBUG
LIB_SUFFIX=d
!ELSE
LIB_SUFFIX=
!ENDIF
然后,将nmake.opt和makefile.vc中所有的
gdal$(VERSION).dll修改为gdal$(VERSION)$(LIB_SUFFIX).dll
gdal_i.lib修改为gdal_i$(LIB_SUFFIX).lib
gdal.lib修改为gdal$(LIB_SUFFIX).lib
(4)
Nmake.opt设置完成后,打开VS的工具命令提示,输入nmake
-f makefile.vc MSVC_VER=1800 WIN64=1进行编译
(5)
输入nmake -f makefile.vc MSVC_VER=1800 WIN64=1 install
生成bin、data、html文件夹
(6)
输入nmake -f makefile.vc MSVC_VER=1800 WIN64=1
devinstall生成lib和include(其实)
(7)
结束!
**注意事项:
1、在将geos库集成到GDAL时,geos库的路径不能有空格,否则文件路径会被破坏从而导致geos库中的头文件无法被识别
linux编译gdal geos,使用nmake编译GDAL+GEOS(傻瓜教程)相关推荐
- Win64下编译集成GEOS和Proj4的GDAL
文章目录 1.编译GEOS 2.编译Proj4 3.GDAL集成Proj4和GEOS 1) 修改安装的目录 2) 配置Proj4 3) 配置GEOS 4) 自定义动态库名称(可跳过) 5) 编译 1. ...
- 编译支持JPEG2000压缩格式的GDAL(ECW库、OpenJPEG)
该文是在我另一篇博客"gdal.geos的 windows编译 openCL加速"基础上进行进一步扩展的,那篇博客记录的是gdal2.2.0的整个编译过程,由于那篇博客的文末记录了 ...
- nmake编译libraw
编译环境:VS2019的nmake libraw:0.20.2 一.使用nmake需要首先设置nmake的环境变量,方法如下: 在系统环境变量path中添加 C:\Program Files (x86 ...
- linux 编译mqtt静态库_编译MQTT C++ Client
nmake -f ms\nt.mak(这是静态库,动态库是ntdll.mak) nmake -f ms\nt.mak test(测试命令,如果成功则最后显示"passed all t ...
- 学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装
在这一系列的前一篇文章学了C语言,如何为下载狂人写一个磁盘剩余容量监控程序?中,我们为下载狂人写了一个程序来监视磁盘的剩余容量,防止下载的东西撑爆了硬盘.可是,这两天,他又抱怨他的下载程序不好用,让我 ...
- vs2010 vc nmake编译openssl-0.9.8e
<vs2010 vc nmake编译openssl-0.9.8e> 一,下载 ActivePerl window安装程序下载:http://downloads.activestate.co ...
- Linux下c和cuda混合编译,并生成动态链接库.so和使用
Linux下c和cuda混合编译,并生成动态链接库.so和使用 2016-08-27 14:27 98人阅读 评论(0) 收藏 举报 分类: Linux 版权声明:本文为博主原创文章,未经博主允许不得 ...
- Linux 之八 完整嵌入式 Linux 环境、(交叉)编译工具链、CPU 体系架构、嵌入式系统构建工具
最近,工作重心要从裸机开发转移到嵌入式 Linux 系统开发,由于之前对嵌入式 Linux 环境并不是很了解,因此,第一步就是需要了解如何搭建一个完整的嵌入式 Linux 环境.现在将学习心得记录 ...
- 龙芯linux内核,龙芯的linux kernel,内核开发与编译
在很久很久以前,linux被视为geek极客的玩具.自行升级Linux内核,对普通用户来说,简直是天方夜谭.曾经的曾经,升级内核需要很多纷繁复杂的步骤,也需要花费很多的时间.但是,现在不一样了.内核的 ...
- 关于Linux开源项目基础组件make编译流程
关于Linux开源项目基础组件make编译流程 非常多Linux开源项目都会用到编译出可运行文件的make.这个是有一套流程的. 首先,GNU构建系统:https://en.wikipedia. ...
最新文章
- Kali Linux 安全渗透教程第七更 大学霸1.4.3安装至VMware Workstation
- C#使用Xamarin开发可移植移动应用进阶篇(8.打包生成安卓APK并精简大小),附源码...
- 6远程桌面连接不上_windows server2008 远程桌面 创建新用户和多用户登录
- html单页倒计时,单页面vue实例带倒计时功能
- Angr安装与使用之使用篇(一)
- GPS定位基本原理解析
- ( 科来网络分析系统 )简单的抓包步骤,具体的后面文章说
- powerdesign 逆向工程
- 【论文研读】-用于约束多目标优化的新型双阶段双种群进化算法补充材料
- OpenWrt 无线桥接
- creator多点触摸理解
- 优动漫PAINT的界面如何适配数位屏/平板?
- C位流行语言,“2018年十大流行语”
- fastboot烧机
- 邮件合并的逆向应用,从多个Word文档中取值到Excel中
- spring中pom变黑 中间有一条黑线,不能用,怎么解决
- Python在操作系统层面上的操作
- 广州楼市:这类楼盘持续跑赢大势,聪明人只看这点
- 深入浅出Linux操作系统搭建JavaEE环境(五)
- 干货 | 科研必备的软件神器