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编译相关推荐

  1. OSG+VS2010+win7环境搭建---OsgEarth编译

    OSG+VS2010+win7环境搭建 Win7下 osg+vs2010环境搭建 一.相关准备 a) Osg源码 当前最新版:OpenSceneGraph的3.0.0.zip 下载链接: http:/ ...

  2. osgEarth编译——以VS2012为例

    整理记录下 osgEarth编译过程. osgEarth是依赖于OSG的三维地理平台. 准备工作 OpenSceneGraph-3.4.0.zip OSG_3RDPARTY_DIR    http:/ ...

  3. osgEarth 编译

    目录 1.配置CMake 2.编译工程 3.配置环境变量 1.配置CMake 打开CMake 填写osgEarth 源码地址  和 osgEarth 编译的地址: 勾选Grouped 和 Advanc ...

  4. QT+OSG/osgEarth编译之四十三:jasper+Qt编译(一套代码、一套框架,跨平台编译,版本:basisjasper-2.0.12)

    目录 1.jasper介绍 2.文件下载 3.文件分析 4.pro文件 5.编译实践 1.jasper介绍        jasp

  5. QT+OSG/osgEarth编译之三十八:Snappy+Qt编译(一套代码、一套框架,跨平台编译,版本:Snappy-1.1.9)

    目录 1.Snappy介绍 2.文件下载 3.文件分析 4.pro文件 5.编译实践 1.Snappy介绍        Snap

  6. QT+OSG/osgEarth编译之四:libpng+Qt编译(一套代码、一套框架,跨平台编译,版本:libpng-1.6.38)

    目录 1.libpng介绍 2.文件下载 3.文件分析 4.pro文件 5.编译实践 1.libpng介绍         PNG

  7. QT+OSG/osgEarth编译之八:webp+Qt编译(一套代码、一套框架,跨平台编译,版本:libwebp-1.2.2)

    目录 1.WebP介绍 2.文件下载 3.文件分析 4.pro文件 5.编译实践 1.WebP介绍

  8. QT+OSG/osgEarth编译之五:libjpeg+Qt编译(一套代码、一套框架,跨平台编译,版本:libjpeg-9e)

    目录 1.libjpeg介绍 2.文件下载 3.文件分析 4.pro文件 5.编译实践 1.libjpeg介绍        libjpeg</

  9. 麒麟系统编译OSG、OSGEarth记

    文章目录 前言 一.代码准备 二.代码编译 注意事项 总结 前言 踩过深坑,走过断桥. 一.代码准备 下载OSG.OSGEarth源码以及所需的第三方依赖库. 中标麒麟编译顺序: autoconf-l ...

最新文章

  1. 开源造轮子:一个简洁,高效,轻量级,酷炫的不要不要的canvas粒子运动插件库...
  2. 坚持,这两个字非常重要!
  3. 笔记:Zygote和SystemServer进程启动过程
  4. 安装meme_新的Meme订单:通过简单的浏览器缓存更改游戏
  5. 2019职称计算机考试哪些地区取消,2019年职称计算机考试注意事项
  6. arch linux 时间,archlinux入门--设置时钟 - webdancer's Blog
  7. Apache使用总结
  8. 齿轮传动设计分析软件 KISSsoft 03-2018 中英文版 带安装视频
  9. Jquery+WeUI开发移动APP应用
  10. java qq机器人_简单几步教你如何用Java快速制作一个QQ机器人
  11. Cisco Packet Tracer 实验教程
  12. 关于集成网卡怎么设置pxe网卡启动
  13. A protocol for Dying
  14. cron每半个小时执行一次_Linux中Cron任务间隔执行:每隔几分钟/几小时/几天
  15. 华为mate40功耗测试软件,华为Mate40Pro续航怎么样-续航能力测试
  16. 【5G之道】第六章:下行链路物理层处理
  17. 开源协议是否可以商用
  18. 热传导偏微分方程的求解
  19. [呼吁]用奶粉代替母乳是误区
  20. 1.ReactiveX - 什么是Rx,Rx的理念和优势

热门文章

  1. dataTable 查询,重置
  2. java重置按钮功能函数_Bootstrap按钮功能之查询按钮和重置按钮
  3. CogColorExtractorTool工具功能
  4. x86_64汇编之二:x86_64的基本架构(寄存器、寻址模式、指令集概览)
  5. # 我的家乡--永平风景
  6. Windows 反消息钩子(1)
  7. 颜色列表 delphi中使用颜色
  8. vs2010MFC D3D播放YUV格式视频详细制作全过程
  9. python程序应用经典实例-Python实例应用经典讲解
  10. oracle 存储过程基本语法