Ogre源码编译教程
最近突然发现Ogre引擎更新到2.1版本了,既然依旧是代码开源,本着学习的精神就下载下来弄弄。但是官网提供的SDK版本只有1.9的,考虑到学习的便利性,因此最好从Source版本开始弄,这样的话以后想一探究竟的时候比较方便不是嘛。。
本教程主要记录的是如何编译Ogre的Source版本并生成SDK,编译环境Windows x64,所有工作目录都保持在英文路径下进行,否则会出现什么奇怪的问题
笔者在摸索清楚整个编译过程中查了许多资料,也都一并将链接放在这里,供大家参考:
- http://www.ogre3d.org/tikiwiki/tiki-index.php?page=CMake+Quick+Start+Guide 这个是教CMake编译Ogre的
- http://www.ogre3d.org/forums/viewtopic.php?f=1&t=83889 坑死笔者的问题,看了这个才知道是为啥=-=
- http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Building+Dependencies 这个介绍了Ogre所需要的依赖库
弄完以后,笔者更加确信了一个真理:有问题,问Google
1、 准备工作:
从Ogre的Bitbucket项目地址:https://bitbucket.org/sinbad/ogre 从这里将Source直接Clone下来,建议使用SourceTree来完成该工作,如果直接下载Zip打包也可以
从https://bitbucket.org/cabalistic/ogredeps 找到Ogre的依赖库,这个依赖库整合了Ogre Source编译需要的必要库,同样的这里用SourceTree搞定
注意,第二个千万不要直接下载Zip包,否则后面会遇到“ No download info given for 'SDL2' and its source directory” 这样的错误,笔者在这里被坑惨了。。直接下载的版本没有SDL2=-=
这两个东西都同步到本地以后,下载cmake的最新版,官方主页是:http://www.cmake.org/ ,下载对应的版本即可,笔者是在Windows下因此下载Windows Binary,安装后准备开始工作
2、Build依赖库(Dependencies):
首先工作是编译依赖库,找一个地方新建一个文件夹用来保存依赖库编译的Output,命名就叫ogredepsBuild吧

如上图所示,打开cmake-gui后,在Where is the source code的位置点击Browse Source...,选择在第一步中同步下载的ogredeps文件夹
在Where to build the binaries的位置点击Browse Build...,选择刚才新建的文件夹,在这里我们起名叫做ogredepsBuild点击下方的Configure后,选择编译目标的IDE环境,笔者使用的是VS2013 x64,选好后点击ok等待完成
完成后,再点击两次Generate就可以完成编译链接工作,这样一来,在ogredepsBuild文件夹中就会生成一个VS项目

打开OGREDEPS.sln后,先将ALL_BUILD进行build,然后再对INSTALL进行build,完成后,在该项目文件夹中会生成一个新的文件夹叫做ogredeps,这里面就保存着编译Ogre所需要的依赖库了,拿好这个进入下一阶段

3、Build Ogre Source:
找一个地方新建名为OgreBuild的文件夹,用于存放Ogre编译后的Output。然后找到第一步中同步下来的Ogre文件夹,打开后新建一个名为Dependencies的文件夹,把第二步生成的依赖库文件copy进来。

打开cmake-gui,在Where is the source code的位置点击Browse Source...,选择Ogre文件夹;在Where to build the binaries的位置点击Browse Build...,选择OgreBuild;然后点击Confgigure,选择编译目标IDE环境,继续
这个步骤中请检查是否提示了一些错误信息,笔者在这里提示了send_errorD:/tools/Ogre/Dependencies/bin/release/OIS.dll did not exist, can't install!,意思是找不到OIS.dll,这个是依赖库的一个dll,不过依赖库内部提供了debug版本,我也就没管,后面用debug进行build也没有影响,如果出现其他问题还请自行核查,一般都是依赖库缺失DLL,自己可以去找一下。完成后会如上图所示。

在这之后再点击两次Generate完成工作,这时候OgreBuild文件夹中已经产生了我们所需要的文件了,找到该文件夹里面的OGRE.sln打开,先将ALL_BUILD进行build,然后再对INSTALL进行build,然后编译工作就基本完成了。
箭头所指示的两个文件夹,bin文件夹存放了编译出来的可以直接运行的内容,sdk文件夹就是本教程的目标了

为了检查效果,我们打开bin/debug文件夹下的SampleBrowser_d.exe,这是Ogre的demo,在Rendering SubSystem中选择对应的渲染引擎后就可以开始了。
另外,如果提示缺少类似OIS_d.dll的话可以直接从依赖库拷贝过来扔到exe所在的目录下,如果exe运行后未响应,说明电脑没有安装对应的渲染引擎。。这时候如果界面也无法调出来重新选,就删除debug内容后重新Build,再或者就是装一个对应的渲染引擎SDK就好了。
Ogre源码编译教程的更多相关文章
- 转:OGRE 源码编译方法
编译及运行环境:Windows 7 . vs2010. 编译前的准备: 1.想编译OGRE,最起码要有OGRE的源码吧.可以去官方网站下载最新的源码包,我这里用的是1.7.2版本的,下载下来的文件叫 ...
- Mysql 源码编译教程贴
题外话:这是一篇教程贴,不仅学的是mysql的编译,还是一些编译的知识.我也是一个菜鸟,写一些感悟和心得,有什么问题可以批评指正,谢谢! 如果只是为了安装请移到我的另一篇安装贴: Mysql安装贴 环 ...
- 独一无二 hortonworks spark 源码编译教程
hortonworks的源码在github上能找到! https://github.com/hortonworks/spark2-release 找到对应版本release源码后下载到本地 在wind ...
- hadoop 2.7.3 源码编译教程
1.工具准备,最靠谱的是hadoop说明文档里要求具备的那些工具. 到hadoop官网,点击source下载hadoop-2.7.3-src.tar.gz. 解压之 tar -zxvf hadoop- ...
- 【转载】Ogre3d 2.1 源码编译安装教程
原文:Ogre3d 2.1 源码编译安装教程 今年是3D手游年,今年也是游戏引擎战争进入白热的一年. 移动游戏的红海时代,让各大端游也忍不住纷纷伸出大白腿,Unreal.CryEngine纷纷宣布自己 ...
- 保姆级教程——Ubuntu16.04 Server下深度学习环境搭建:安装CUDA8.0,cuDNN6.0,Bazel0.5.4,源码编译安装TensorFlow1.4.0(GPU版)
写在前面 本文叙述了在Ubuntu16.04 Server下安装CUDA8.0,cuDNN6.0以及源码编译安装TensorFlow1.4.0(GPU版)的亲身经历,包括遇到的问题及解决办法,也有一些 ...
- [转]如何编译tizen源码(图文教程)?
http://blog.csdn.net/flydream0/article/details/9004746 前一篇文章已经介绍了如何下载tizen源码(http://blog.csdn.net/fl ...
- 如何编译tizen源码(图文教程)?
前一篇文章已经介绍了如何下载tizen源码,下面我将继续讲述如何编译源码. 1 下载安装gbs编译工具 tizen源码是用gbs工具进行编译的,因此我们首先得将此工具下载下来,并且设置好. 下面的Ub ...
- 【运维技术】Nginx安装教程(yum安装,源码编译)
安装方式 yum直接更新源安装 源码直接编译之后安装 使用yum进行直接安装 Installing a Prebuilt CentOS/RHEL Package from an OS Reposito ...
随机推荐
- MyEclipse使用总结——MyEclipse文件查找技巧
原文:MyEclipse使用总结--MyEclipse文件查找技巧 一.查找文件 使用快捷键[ctrl+shift+R]弹出弹出文件查找框,如下图所示: 二.查找包含某个字符串的文件 使用快捷键[ct ...
- 深入理解PHP中赋值与引用
原文:深入理解PHP中赋值与引用 先看下面的问题: <?php $a = 10;//将常量值赋给变量,会为a分配内存空间 $b = $a;//变量赋值给变量,是不是copy了一份副本,b也分配了 ...
- MVC4
MVC4 本地正常运行,发布到IIS7->403 - 禁止访问: 访问被拒绝. 摘要: 上周五代码编写完成,计划发布一个版本测试,没想到发布到IIS7 竟然报错“403-禁止访问”.还真第一次遇 ...
- TRS_WCM(拓尔思信息技术有限公司)内容协作平台平台置标经验攻略
TRS_WCM置标过程中经验积累 版本V4.0-2014.6.24-穿越者7号 目录 1.嵌套模板置标 1 2.栏目名称超链接置标 1 3.列表循环输出文档标题包含超链接 1 4.取既定栏目下第一篇文 ...
- 使用 C# 进行 Outlook 2003 编程
原文:使用 C# 进行 Outlook 2003 编程 摘要: 本文介绍了 Microsoft Outlook 2003 对象模型介,并探讨了如何使用 C# 编程语言生成 Outlook 识别的应用程 ...
- 安装Windows2003操作系统 - 初学者系列 - 学习者系列文章
Windows 2003是一款经典的服务器操作系统.以前笔者工作的时候就是用的这款操作系统来进行编程的.下面就对该操作系统的安装进行介绍(部分步骤参见XP的安装http://www.cnblogs.c ...
- C#实现文档转换成PDF
网上有很多将doc.ppt.xls等类型的文档转换成pdf的方法,目前了解到的有两大类: 1.使用虚拟打印机将doc.ppt.xls等类型的文档 2.使用OFFICE COM组件 我采用了第二种方法实 ...
- 【工作笔记一】【转】Visual Studio 2012常用快捷键总结
Visual Studio 2012常用快捷键总结 原文 http://blog.csdn.net/yl2isoft/article/details/9886379 写在前面: 都知道,合理使用 ...
- android 实现分享功能两种方法
当我想做一个智能的记事本的时候,我就在尝试自己写一组分享功能.后来才知道,原来每个社交软件中都有自己的分享接口. 这就大大减少了我们的代码量了. 第一种方法:特点--简单 package com.ex ...
- VS 文件自动定位功能
在Visual Studio 中,当你在所有打开的文件中进行切换时,在Solution Explorer中也会自定定位到这个文件的目录下面,这个功能用来查找当前文件是非常有用.在Tools->O ...