回头看,自上学以来,做虚拟现实、三维地理信息系统已有六个年头。为了节省花费在编码上的精力,编程应用的API函数也由opengl变成了OpenSceneGraph,但还是花费了很多气力,为了更好的提高开发的效率,提高软件的质量,决定学习delta3d。

费了一天的时间,终于将deltae3d安装好,调试通过。虽然网络上有很多中文或英文的教程,告诉你如何操作,但按照上面操作还是遇到了很多莫名奇妙的问题。

现将自己的安装过程记录下来,以供以后参考。

一、            选择合适的安装环境

目前编译delta3d常用的编程环境主要有两种VS2005 sp1和VS2008,我将以VS2005 sp1为例,介绍整个编译过程。

二、            下载相关资源

1、Openscenegraph-2.8。为了应用以前的劳动成果,我选择应用2.8b版本,将ext中的osg相关库去除。链接:http://www.openscenegraph.org

2、Delta3d源代码。链接:http://sourceforge.net/project/showfiles.php?group_id=113203。或者通过TortoiseSVN软件从 https://delta3d.svn.sourceforge.net/svnroot/delta3d/trunk/delta3d 获得源代码。建议应用http://sourceforge.net 上下载成熟版本代码,毕竟在trunk中的代码还在更新,难免有些莫名其妙的问题。将压缩文件解压缩至某盘符。

3、Delta3d Vs2005版本的支持库。                  链接:https://delta3d-extras.svn.sourceforge.net/svnroot/delta3d-extras/ExtDep/dev/Windows/XP/VS2005/。并将下载的文件放入delta3d根目录文件夹下的ext文件夹里。

4、qt-win-opensource-src-4.3.2 。 链接:http://www.qtsoftware.com/products下。在代码中指定应用此版本,不用会报错。

5、Cmake2.6。下载链接:http://www.cmake.org/

三、            编译安装QT

1、将 qt-win-opensource-src-4.3.2解压缩至C:\\Delta3dSup\\QT文件夹中。

2、"开始"菜单 -> "Microsoft Visual Studio 2005" -> "Visual Studio Tools", 运行命令行。

3、运行命令configure -platform win32-msvc2005

4、上一命令结束后运行,运行nmake sub-src

5、上一命令结束后,运行nmake clean,清除临时文件。

6、设置环境变量QTDIR = C:\\Delta3dSup\\QT。此变量为Delta3D需要。

7、设置环境变量PATH  = %QTDIR%\bin

四、            安装Boost

五、            安装Delta3d

1、设置适合Delta3d的环境变量

DELTA_ROOT =   Delta3D的根目录

DELTA_INC   =   %DELTA_ROOT%/inc; %DELTA_ROOT%/ext/inc

DELTA_LIB    =  %DELTA_ROOT%/lib; %DELTA_ROOT%/ext/lib

DELTA_DATA  =  %DELTA_ROOT%/data

添加%DELTA_ROOT%\bin;%DELTA_ ROOT %\ext\bin路径至PATH变量中。

2、运行Cmake,在第一行添入Delta3d的根目录,第二行添入Delta3d的根目录/build。

3、确定、产生*.sln文件。产生文件过程中会提示找不到BOOST_INCLUDE变量,手动设置此路径到boost安装文件夹

六、            编译文件

编译DELTA3D.sln,在编译中会报找不到#include <qplaintextedit.h>与# include< qformlayout.h >库文件的错误,此文件在4.3.2中没有,应该时QT后面版本的内容,作者自由加上的。我的解决方案是注释掉相关内容。

转:如何编译delta3d的更多相关文章

  1. 转:Delta3D Editor编译成功

    下载:     官网 www.delta3d.org 有些地方访问不了(试试这个代理:133.1.74.163 3128),我在公司就访问不了,但是住的地方就可以.但是sourceforge是可以访问 ...

  2. Delta3D Open Source Engine

    在看<游戏编程精粹6>时看到了这个引擎,彩插7是这个引擎的Editor,我一看就是Qt写的,我太熟悉Qt的界面了,呵呵.Editor非常强悍!有类似3dmax的4个视图 下载这个看下吧,里 ...

  3. (转)Delta3D源码分析

    最近学习Delta3D,  2.4版忙着发布,一直不能成功编译SimCore, 索性静下心来看看源码,官网上竟然提供了几个重要组建的软件设计说明书(SDD),虽说基本都是2005版了,不过我看了后觉得 ...

  4. TODO:macOS编译PHP7.1

    TODO:macOS编译PHP7.1 本文主要介绍在macOS上编译PHP7.1,有兴趣的朋友可以去尝试一下. 1.下载PHP7.1源码,建议到PHP官网下载纯净到源码包php-7.1.0.tar.g ...

  5. Centos6.5下编译安装mysql 5.6

    一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...

  6. CENTOS 6.5 平台离线编译安装 PHP5.6.6

    一.下载php源码包 http://cn2.php.net/get/php-5.6.6.tar.gz/from/this/mirror 二.编译 编译之前可能会缺少一些必要的依赖包,加载一个本地yum ...

  7. CENTOS 6.5 平台离线编译安装 Mysql5.6.22

    一.下载源码包 http://cdn.mysql.com/archives/mysql-5.6/mysql-5.6.22.tar.gz 二.准备工作 卸载之前本机自带的MYSQL 安装 cmake,编 ...

  8. Android注解使用之注解编译android-apt如何切换到annotationProcessor

    前言: 自从EventBus 3.x发布之后其通过注解预编译的方式解决了之前通过反射机制所引起的性能效率问题,其中注解预编译所采用的的就是android-apt的方式,不过最近Apt工具的作者宣布了不 ...

  9. Hawk 6. 编译和扩展开发

    Hawk是开源项目,因此任何人都可以为其贡献代码.作者也非常欢迎使用者能够扩展出更有用的插件. 编译 编译需要Visual Stuido,版本建议使用2015, 2010及以上没有经过测试,但应该可以 ...

随机推荐

  1. 奇怪吸引子---Arneodo

    奇怪吸引子是混沌学的重要组成理论,用于演化过程的终极状态,具有如下特征:终极性.稳定性.吸引性.吸引子是一个数学概念,描写运动的收敛类型.它是指这样的一个集合,当时间趋于无穷大时,在任何一个有界集上出 ...

  2. HttpWebRequest 对象池 HTTP协议 HttpWebRequest和 Socket的一点总结

    相信接触过网络开发的人对HTTP.HttpWebRequest.Socket这些东西都不陌生吧.它们之间的一些介绍和关系我这里都忽略了.开我们平时开发过程中也是很少有机会接触大什么大并发这个东东,一般 ...

  3. 读书笔记,《Java 8实战》,第三章,Lambda表达式

    第一节,Lambda管中窥豹    可以把Lambda表达式理解为简洁地表示可传递的匿名函数的一种方式,它没有名称,但它有参数列表.函数主题和返回值.    本节介绍了Lambda表达式的语法,它包括 ...

  4. [PowerShell Utils] Automatically Change DNS and then Join Domain

    I would like to start a series of blog posts sharing PowerShell scripts to speed up our solution ope ...

  5. 如何得知当前机器上安装的PowerShell是什么版本的?

    $PSVersionTable.PSVersion   参考资料 ================ http://stackoverflow.com/questions/1825585/determi ...

  6. iOS开发-KVC和KVO的理解

    KVC和KVO看起来很专业,其实用起来还是比较简单的,KVC(Key-value coding)可以理解为键值对编码,如果对象的基本类型,那么键值对编码实际上和get,set方法没有区别,如果是属性是 ...

  7. Proxy 动态代理 InvocationHandler CGLIB MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  8. Java对象的序列化和反序列化源码阅读

    前言 序列化和反序列化看起来用的不多,但用起来就很关键,因为稍一不注意就会出现问题.序列化的应用场景在哪里?当然是数据存储和传输.比如缓存,需要将对象复刻到硬盘存储,即使断电也可以重新反序列化恢复.下 ...

  9. 强化Linux安全的10个技能

    1.找出不必要的服务 很明显,服务器上跑的服务,并不是每个都有用的.强烈建议检查并关掉不需要的服务,从而减少风险(多跑一个服务,就可能多几个漏洞). 查询运行在runlevel 3的服务列表: [af ...

  10. redis 中 set 和 hset 有什么不同,什么时候使用 hset 什么时候使用set?

    转载:https://blog.csdn.net/wab719591157/article/details/73379844 redis 中存数据时,到底什么时候用  hset 相比于 set 存数据 ...