osgEarth编译(转载)
osgEarth编译
osgEarth的编译需要osg和一些第三方插件库,我主要参考了cnblogs上的一篇博文,但是也不够详细,并且我是在已经编译好osg的情况下去编译osgEarth,所以期间也遇到了一些问题,下面我详细说明:
- 注意:首先需要你编译所有插件和osg的,以及osgEarth的都要使用同一个VS平台,下面的编译均是在VS2008 sp1环境下进行的
- 准备工作(参考缑城浪子博客)
下载所需要的插件和库包括:
下载: http://osgearth.org/wiki/Downloads
CURL (curl-7.21.7.tar.gz): http://curl.haxx.se/download.html
GDAL(gdal-1.8.0.tar.gz):http://trac.osgeo.org/gdal/wiki/DownloadSource
GEOS(geos-3.2.2.tar.bz2):http://trac.osgeo.org/geos/
exe文件:http://files.cnblogs.com/eaglezhao/expat-win32bin-2.0.1.rar
libzip(libzip-windows.zip): code:http://nih.at/libzip/
编译好的包供下载:
vs2008: http://wush.net/trac/osgearth/raw-attachment/wiki/Downloads/libzip-windows.zip
vs2010:
http://files.cnblogs.com/eaglezhao/libzip(vs10).rar
OSGEARTH(SVN上下载):svn: http://svn.github.com/gwaldron/osgearth.git(目前最新版是osgearth 2.0)
- 安装:
- CURL
注意你下载的如果是源码版本,直接用VS2008编译,还可以下载预编译的版本,但是里面缺少一个调试的库文件.
编译好后将目录下的include/curl下文件拷到E:\OSG\3rdparty\include\curl ,进行覆盖
编译好后将目录下的lib下的libcurl.dll文件拷到E:\OSG\3rdparty\bin ,进行覆盖
- GDAL
下载完GDAL的源码后,还需要先运行makegdal_gen.bat这个文件,然后打开X:\Program Files\Microsoft Visual Studio\VC98\bin\VCVARS32.BAT,X代表你VS的安装盘.打开后用cd命令切换到你GDAL的目录下执行命令,nmake /f makefile.vc MSVC_VER=1500 BUILD_DEBUG=YES,其中1500代表VS版本2008,当然你也可以进入nmake配置文件修改.
GDAL编译完成后的文件存放于C:\warmerda\bld,包含文件include,lib,data,bin,可将它们拷贝到GDAL文件夹下,置于OSG目录下。最后进行以下工作:
将alg、gcore、ogr、port文件夹下的.h文件拷贝到include下, 将生成的lib、 dll 包括: gdal_i.lib gdal.lib cpl.lib(port目录下) ogr.lib(ogr目录下), 以及gdal18.dll
拷贝到D:\OSG\GDAL\lib下
- GEOS
用编译GDAL同意的办法编译完成GEOS.将生成的geosd.lib,geos.lib, geos_c_i.lib, geosd_c_i.lib拷贝到D:\OSG\geos\lib下,将geos-3.2.2\source\headers下的geos文件夹拷贝到include下.
最后的文件结构如图:
注意里面的expat我并没有用上,可能已经被其他的库所包含了.
osg是已经编译好的,并且osg的环境变量已经设定好,那么cmake会自动找到你的osg
的路径的.
- 编译osgEarth
使用cmake打开osgEarth的cmakeLIsts.txt
改DYNAMIC_OSGEARTH (BOOL变量) ON
OSG_DIR (PATH) X:/OSG/OpenSceneGraph
具体cmake里面的设置参照下图:
最后就是要将里面的notfound的项的内容删除,也就是置空.
接着就生成VS的解决方案,进入VS以后里面要设置包含文件和库文件
生成完成后,再运行INSTALL工程进行生成。
注意要生生成debug和release两个版本,和osg一样,debug和release版本要对应, 否则将会出错,对应的调试命令和库文件都要单独设置,否则可能会出现找不到插件或者其他问题.
- 环境变量配置
将D:\OSG\OSGEARTH\lib\Debug和Release文件夹下的文件全部拷贝到D:\OSG\OSGEARTH\bin下的Debug和Release文件夹下,再运行.exe,缺什么.dll,搜索拷贝进去即可(gdal18.dll在GDAL文件夹下)。
环境变量设置
OSG_FILE_PATH:D:\OSG\OSGEARTH\data;D:\OSG\GDAL\data;
PATH:E:\OSG\3rdParty\bin;D:\OSG\OSGEARTH\bin\Debug; D:\OSG\OSGEARTH\bin\Release;
最后你从cmd进入源码目录的tests文件夹,测试是否安装成功.
出现一个有纹理的地球,说明已经安装成功.否则就是有错误.大部分情况是插件编译的问题.
osgEarth编译(转载)的更多相关文章
- 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环境搭建 ...
- 第一讲(3)osgearth编译
前题条件完成osg 3.0的编译Step 1 下载osgEarth 2.1.1https://github.com/gwaldron/osgearth/downloads------------> ...
- osgEarth编译——以VS2012为例
整理记录下 osgEarth编译过程. osgEarth是依赖于OSG的三维地理平台. 准备工作 OpenSceneGraph-3.4.0.zip OSG_3RDPARTY_DIR http:/ ...
- osgEarth编译的一些问题
这两天借着osg培训的机会捯饬了下64位osgearth的编译.遇到了一些问题: 首先我没有编译osg,用的提供的osg3.2.1编译好的64位包. 编译osgearth先后编译了2个版本,先是2.7 ...
- osgearth介绍(转载)-feature_labels.earth
初识osg OSG的诞生 在 1997 年时,Don Burns 由于喜欢滑翔机运动且对计算机图形学非常熟悉,在 LINUX 上写了一个控制滑翔机的小引擎,这便是 OSG 的最初雏形.后来在 1998 ...
- 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 ...
- Windows下OSGEarth的编译过程
目录 1. 依赖 1) OpenSceneGraph 2) GDAL 3) CURL 4) GEOS 5) 其他 2. 编译 1) 设置参数 2) 配置路径 3) 生成编译 3. 参考文献 1. 依赖 ...
随机推荐
- OSPF的基本配置及DR /BDR选举的实验
OSPF的基本配置及DR /BDR选举的实验 实验拓扑: 实验目的:掌握OSPF的基本配置 掌握手工指定RID 掌握如何修改OSPF的接口优先级 观察DR BDR选举的过程 实验要求:R3当选为DR ...
- Request 地址栏传值
request页面 protected void btnSearch_Click(object sender, EventArgs e) { Response.Redirect("Reque ...
- IPoint Interface接口
Description A Point is a zero-dimensional object that represents a specific (X, Y) location in a the ...
- 用JavaScript 来将数字转换成字符。
背景: 一切嵌入式设备上面的信息,比如设备名称,设备时区是可以写入到设备上面的寄存器中的(一个寄存器两个字节,2*8 bit),比如 -1 ,写入到寄存器中为 2d31,然后可以通过一些进程将寄存器中 ...
- ural1855 Trade Guilds of Erathia
Trade Guilds of Erathia Time limit: 2.0 secondMemory limit: 64 MB The continent of Antagarich was co ...
- DWR整合之Servlet
DWR 与 Servlet 有 2 个 Java 类你一般需要用在 DWR 中,是 webContext 和 WebContextFactory 在 DWR 1.x 它们在 uk.ltd.getahe ...
- 转:web_custom_request应用示例
LoadRunner提供的web_custom_request函数可以用于实现参数的动态生成.在LoadRunner中,web_reg_save_param和custom_request都常于处理参数 ...
- PAT1009
多项式乘法 和多项式加法类似,参考之前多项式加法的代码改改就出来了. 主要是注意一下.最大次数应该会有1000000,然后按照乘法规则来,分配率就没有问题 #include<cstdio> ...
- PS2键盘 + LCD12864 实验
本实验是通过LCD12864来显示键盘上被按下的按键,实验比较简单,在LCD12864固定的DDRAM地址上显示,缺点就是不能保存上一次被按的内容,后者会覆盖掉前面,所以屏上仅有一个字符显示.保存上一 ...
- 如何打开USB OTG功能:
一.检查HW原理图,确认是否支持OTG功能(vbus是否供上电,IDDIG pin连接是否正确)二.若HW确认支持OTG功能,则按照以下方法分别打开USB OTG功能及实现挂载: 如何打开USB OT ...