osgEarth编译——以VS2012为例
整理记录下 osgEarth编译过程。
osgEarth是依赖于OSG的三维地理平台。
准备工作
OSG_3RDPARTY_DIR http://download.osgvisual.org/3rdParty_VS2012.3_v110_x86_x64_V8b_full.7z
geos-3.4.2.tar.bz2 http://download.osgeo.org/geos/geos-3.4.2.tar.bz2
sqlite https://www.sqlite.org/download.html
osgearth-2.7 https://github.com/gwaldron/osgearth/releases
编译工作
编译OSG、然后编译或下载geos和sqlite,最后编译osgEarth;
编译OSG
1、解压 OpenSceneGraph-3.4.0.zip 和 3rdParty_VS2012.3_v110_x86_x64_V8b_full.7z
2、安装打开CMake,https://cmake.org/download/
配置Source code路径到 E:/osg3.4.0/OpenSceneGraph-3.4.0/OpenSceneGraph-3.4.0
配置build路径到 E:/osg3.4.0/OpenSceneGraph-3.4.0/OpenSceneGraph-3.4.0/vs2012
3、点击Configre,选择VS版本。
4、配置ACTUAL_3RDPARTY_DIR路径为3rdParty_VS2012.3_v110_x86_x64_V8b_full.7z解压路径,且注意选择X64还是X86文件夹
5、点击Configure,完成后,点击Generate。VS2012打开,并编译完成。用其中bin,include,lib文件夹内容。
编译GEOS
1、安装CMake2.8以上版本,解压geos到E:\geos-3.4.2,新建E:\geos-3.4.2\vs2012 作为编译的目标文件夹
2、cmd中命令行配置如下 E:\geos-3.4.2\vs2012> cmake -G "Visual Studio 11 2012 Win64" E:\geos-3.4.2 如果是x86版本,去掉Win64。
3、vs打开工程。为了区分Release和debug下的dll和lib,更改geos输出目录。
链接器->高级->导入库
链接器->常规->输出文件
4、新建文件夹,拷贝源文件和编译文件的include到include,拷贝geos.dll,geosd.dll到bin文件夹,拷贝geos.lib,geosd.lib到lib文件夹
编译sqlite
1、下载 sqlite-amalgamation-3130000.zip 和 sqlite-dll-win64-x64-3130000.zip 在 https://www.sqlite.org/download.html,并解压
2、新建VS Win32项目,dll 空项目。确定后,配置解决方案从win32改为X64。
3、从sqlite-amalgamation-3130000 拷贝 sqlite3.h 和sqlite3ext.h,添加到项目头文件,
复制sqlite3.c 和sqlite-dll-win64-x64-3130000中的 sqlite3.def,添加到项目源文件。
4、在链接器->输入->模块定义文件中输入 sqlite3.def;
在预处理定义中添加 SQLITE_ENABLE_RTREE
SQLITE_ENABLE_COLUMN_METADATA
编译osgEarth
1、解压osgearth_2.7 ,CMake填入Source code 和 build 路径。
2、选择目标版本后,配置CMake
(1)配置OSG_DIR 对应osg编译后的库文件夹,文件夹 包括 bin,include,lib。点击Configure。
(2)配置CURL、zlib、minizip、GDAL对应的include和lib。lib可能包括debug和Release; 库是利用OSG的3rdParty_VS2012.3_v110_x86_x64_V8b_full.7z
(3)配置GEOS和SQLITE3的include和lib。其中sqlite3仅仅配置Release,GEOS还有配置debug lib ------geosd.lib
3、点击Configure,完成后再 点击Genetor。
4、打开OSGEARTH.sln,编译代码。编译完之后,相应的dll拷贝和exe同目录,就可以执行测试了。
这里编译64位和编译32位没有差异,只要注意下依赖库对应。通过配置test中相应的earth文件,设置测试用例为启动项,就可以跑起来了。
参考:
http://www.cnblogs.com/geospatial/p/4027696.html GEOS编译
https://trac.osgeo.org/geos/wiki/BuildingOnWindowsWithCMake GEOS
http://zhujiangtao.com/?p=670 SQlite3编译
http://www.sqlite.org/howtocompile.html SQlite3
http://docs.osgearth.org/en/latest/startup.html#get-the-source-code osgearth build
osgEarth编译——以VS2012为例的更多相关文章
- OSGEarth编译
解决OSGEarth编译时出现error LNK1181: 无法打开输入文件“optimized.lib的问题 以下方案受到了osg大神qq网名为“阿威.小号”的帮助. 在采用Cmake3.6.2创建 ...
- OSG+VS2010+win7环境搭建---OsgEarth编译
OSG+VS2010+win7环境搭建---OsgEarth编译 转:http://www.cnblogs.com/hnfxs/p/3161261.html Win7下 osg+vs2010环境搭建 ...
- osgEarth编译(转载)
osgEarth编译 osgEarth的编译需要osg和一些第三方插件库,我主要参考了cnblogs上的一篇博文,但是也不够详细,并且我是在已经编译好osg的情况下去编译osgEarth,所以期间也遇 ...
- 第一讲(3)osgearth编译
前题条件完成osg 3.0的编译Step 1 下载osgEarth 2.1.1https://github.com/gwaldron/osgearth/downloads------------> ...
- osgEarth编译的一些问题
这两天借着osg培训的机会捯饬了下64位osgearth的编译.遇到了一些问题: 首先我没有编译osg,用的提供的osg3.2.1编译好的64位包. 编译osgearth先后编译了2个版本,先是2.7 ...
- boost.python编译及演示样例
欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46781581 linux编译boost的链接:http://bl ...
- osgearth 编译日志
1>------ 已启动生成: 项目: ZERO_CHECK, 配置: Debug x64 ------1> Checking Build System1> CMake does n ...
- VS2015 osgEarth 编译
E:\OpenSourceGraph\CURL_install\includeE:\GDAL\includeE:\Geos\geos_3_5_install\includeE:\OpenSourceG ...
- mingw 环境编译 liburl故障一例
环境是 windows 10,已经安装 mingw,并设置好mingw 和 msys的环境变量 C:\Users\cracker>set |grep MinGW Path=C:\Program ...
随机推荐
- SQL语句01
SQL(Structured Query Language):结构化查询语言 SQL分类: 数据操纵语言DML(Data Manipulation Language) SELECT ...
- .net core webapi 使用过滤器。
过滤器一般用于权限校验.日志处理... 一:ActionFilterAttribute过滤器. 1:建一个类,继承于ActionFilterAttribute抽象类. public class Log ...
- 几个用Python实现的简单算法
一.算法题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源 ...
- git提交代码到远程仓库
1.仓库初始化 git init 2.连接仓库 git remote add origin 仓库地址 3.查看状态 git status 4.将文件添加到暂存区 git add 状态里的新文件 5.将 ...
- WebLogic 数据源密码加密
先启动域:
- http请求数据封装
package com.wdm.utils; import java.io.ByteArrayOutputStream; import java.io.IOException; import java ...
- oracle 树状结构递归 PL/SQL输出控制 包括空格输出控制
树状结构 存储过程中通过递归构建,类似BBS回帖显示,代码共三段: 建表,插入数据,创建存储过程显示: 1.create table article(id number primary key,con ...
- vue 获取数据联动下拉框select ,并解决报Duplicate value found in v-for="...": "". Use track-by="$index" 错误
公司项目中遇到一个问题,联动下拉框,并且数据是使用vue-resource从后台获取的,格式不利于输出联动下拉框,联动下拉框是第一个下拉框输出一个数组里每一项json的一个text值,从而第二下拉框输 ...
- [转]使用ASP.NET Web API 2创建OData v4 终结点
本文转自:http://www.cnblogs.com/farb/p/ODataAspNetWebAPI.html 开放数据协议(Open Data Protocol[简称OData])是用于Web的 ...
- facebook 登录开发记录
1.注册一个 facebook 的账号 2.进入 facebook 开发者的网站.(也可以在 facebook 登录后,点击自己的名字进入用户信息页面,在该页面的底部有个“更多”的链接,点击进去会看到 ...