Ogre源码编译步骤

原创 2016年08月31日 16:19:52

这篇文章虽然是标记为原创,实则是作者在根据网络中各个文章资料自己编译ogre源码实现记录。所以哪位原作者在这篇文章中看见类似或一样的片段,请不要怪罪。

一、编译生成Ogre 1.8.1源代码

0、我的系统环境

操作系统:64Windows7 
编译环境:Visual Studio 2010 
编译ogre1.8.1源码。

先决条件:

1.从官网下载页面点击"Download a source package",然后选择源代码下载包。

此处我选择最新版的OGRE 1.8.1 Source For Windows。

这里给出下载链接地址:http://www.ogre3d.org/download/source

2.确保电脑上安装了DirectX SDK,建议用Feb10或June10版的,没有的童鞋请到

http://www.microsoft.com/en-us/download/details.aspx?id=6812下载并安装。

3.包含dll,头文件,lib等内容的Dependencies,我们选用OgreDependencies_MSVC_20101231

在Old Microsoft Visual C++ Precompiled Dependencies Package处下载,

下载地址:http://www.ogre3d.org/download/sdk

3.需要Boost链接库,这是一个线程库,用于分页组件

我们用到目前为止最新的boost1.55。

下载地址:http://sourceforge.net/projects/boost/files/boost/1.55.0/

4 .cmake安装文件下载: 
http://www.cmake.org/download/ 
我下载的是cmake-3.2.1-win32-x86.exe

5.需要Visual Studio系列IDE,可以选择VS2008,VS2010,VS2012,这里以VS2010为例。

(注意,需要打SP1补丁,也就是Service Pack 1, 如果没打补丁,CMAKE工具使用中可能会出错。)

2、安装cmake3.2.1

安装cmake到电脑,步骤略。

3、解压缩源代码

解压缩ogre_src_v1-8-1.exeOgreDependencies_MSVC_20101231.zip文件。

OgreDependencies_MSVC_20101231文件夹下的Dependencies文件夹放到ogre_src_v1-8-1文件夹下。

ogre_src_v1-8-1文件夹移动到适当的位置。这里我将ogre_src_v1-8-1文件放在D盘根目录下。

4、编译Dependencies

进入D:\ogre_src_v1-8-1\Dependencies\src文件夹,打开sln文件。 
先打开vs2010,从这里打开OgreDependencies.VS2010.sln文件,会提示转换对话框,确定即可。

选择解决方案平台 win32,先编译Debug版本解决方案后再编译release

5.编译boost库。

 #1.boost_1_55_0解压,此处是G:\根目录。

 #2.编译bjam

 <1>.从开始菜单处的vs2010的工具菜单进入命令提示窗口

(单击“开始”按钮,指向“所有程序”,指向“Microsoft Visual Studio 2010”,指向“Visual Studio tools(工具)”,然后单击“Visual Studio 2010 command prompt(命令提示)” )


<2>.输入cd G:\boost_1_55_0定位到该文件目录下,然后输入bootstrap.bat建立Boost.Build engine
DOS下运行完成后会看到这样的画面,并且在G:\boost_1_55_0下出现了b2.exebjam.exe这样两个文件。
(注意:此处及以下请根据所安装的目录的操作,请勿盲目跟从。)

出现b2.exebjam.exe


#3.设定编译环境(为了去掉编译器警告)
打开G:\boost_1_55_0\tools\build\v2\user-config.jam,并对其msvc版本进行修改,
原来:
# -------------------
# MSVC configuration.
# ------------------
# Configure msvc (default version, searched for in standard locations and PATH).
# using msvc ;
# Configure specific msvc version (searched for in standard locations and PATH).
# using msvc :8.0 ;
修改之后为:
# -------------------
# MSVC configuration.
# ------------------
# Configure msvc (default version, searched for in standard locations and PATH).
# using msvc ;
# Configure specific msvc version (searched for in standard locations and PATH).
# using msvc :10.0 ;
(若是想编译成VS2010版请改成10.0
 PS:我用的文本编辑工具是nopepad++,很方便的工具,附上一张修改截图。)


#4.最终编译boost
DOS窗口中输入以下命令来执行bjam.exe:
bjam stage ^ --without-python ^ --toolset=msvc-10.0 ^ --build-type=complete ^ 
 --stagedir="G:\boost_1_55_0\vc10" ^ link=static ^ runtime-link=static 
 runtime-link=shared ^ threading=multi ^ debug release 输完后按回车~
(PS:编译至少需要半个小时,这个时候请不妨听听音乐,玩玩游戏,放松放松心情吧O(_)O
先上图:

执行等待中....


stage表示只生成库(dlllib),
" ^ "符号表示与下面的命令连接,输入" ^ "后按回车
便可以继续输入命令(此处注意空格,不要把两个本应该分开的命令连起来了),
without/with:表示编译或不编译哪些库
toolset:表示编译工具集,VS2010msvc-10.0
build-type:表示编译类型,complete为完全编译
stagedir:表示编译生成文件路径,此处是G:\boost_1_55_0\bin\vc10
link:表示生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。一般boost库可能都是以static方式编译,因为最终发布程序带着boostdll感觉会比较累赘。
runtime-link:表示动态/静态链接C/C++运行时库。同样有sharedstatic两种方式,这样runtime-linklink一共可以产生4种组合方式,各人可以根据自己的需要选择编译。一般link只选static的话,只需要编译2种组合即可,即link=static runtime-link=sharedlink=static runtime-link=static
threading:表示单/多线程编译。默认指定为单线程,multi表示多线程方式,single表示单线程方式。
debug/release:表示编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。
#5.看到这样的画面后便表示boost编译成功了。


#6.boost进行简单测试。
新建一个控制台WIN32工程,然后在新建的CPP中输入以下代码:

#include <boost/regex.hpp>
#include <iostream>
#include <string>
int main()
{
std::string line;
boost::regex pat( "^Subject: (Re: |Aw: )*(.*)" );
while (std::cin)
{
std::getline(std::cin, line);
boost::smatch matches;
if (boost::regex_match(line, matches, pat))
std::cout << matches[2] << std::endl;
}
}

然后在工程属性中添加包含目录G:\boost_1_55_0和库目录G:\boost_1_55_0\vc10\lib)

Boost会自动包含静态链接库,所以不用手动添加,好了,按F5运行一下,若是出现黑色窗口则表明测试成功,我们编译的boost库可以使用!!!


#7.请注意,在编译过程中会产生中间过程文件,由于比较占空间,
现在编译成功之后可以删除这些中间过程文件。(竟然有2.75G之多)
(默认为G:\boost_1_55_0下的bin.v2 )

6  cmake生成代码

打开cmake_gui.exe

source code 中选择文件夹:D:\ogre_src_v1-8-1

D:\ogre_src_v1-8-1文件夹下新建目录:Build

build of binaries中选择文件夹:D:\ogre_src_v1-8-1\Build

点击Configure”按钮,选择对应的vs版本。我选择的是vs2010

完成”后,结果如下图。 

再次点击Configure”按钮,结果如下图。 


点击Generate”按钮,结果如下图。 

cmake生成代码完成。关闭cmake_gui.exe

7.编译构建Ogre

#1.打开G:\OGRE_2010\Ogre_Build下的OGRE.sln


#2.分别在DebugRelease下生成解决方案。


生成完成后将G:\OGRE_2010\ogre_src_v1-8-1\Dependencies中的

bin,include,lib合并到G:\OGRE_2010\Ogre_Build当中,再将

G:\OGRE_2010\ogre_src_v1-8-1\Samples中的media复制到

G:\OGRE_2010\Ogre_Build\Samples,

然后启动G:\OGRE_2010\Ogre_Build\bin\release下的SampleBrowser.exe

附上一张成功启动后的截图:

文章中使用到的安装包与插件连接 (百度云)

链接:http://pan.baidu.com/s/1qYrNPRA 密码:8fmo

版权声明:本文为博主原创文章,未经博主允许不得转载。

OGRE源代码编译超详细步骤

第一步: 了解OGRE是什么东东,这个我就不说了,直接上官网逛吧:http://www.ogre3d.org/ ;还有对应的中文比较好的网站:http://www.ogre3d.cn/ 第...
  • CNHK1225
  • CNHK1225
  • 2015年09月02日 18:01
  • 1566

VS2013编译OGRE,只成功编译1.8的版本

半年前需要用OGRE,由于自己一直用的VS2013编译器,而OGRE官方并没有发布VS13版的公开库,如果需要只能自己编译,便用VS2010版的代替了。现在还是需要里面的功能,只能自己想办法弄个VS2...
  • tianxiaguixin002
  • tianxiaguixin002
  • 2015年12月11日 09:18
  • 1286

Ogre场景编辑器Ogitor

Ogre场景编辑器Ogitor Ogitor-0.4.2源代码构建,不少时间,这里记录一下: 下载源代码的地址为:http://hg.ogitor.org/v0-4 点击z...
  • linuxheik
  • linuxheik
  • 2017年01月03日 17:20
  • 240

从源代码开始构建Ogre图文教程(Ogre 1.8 Source + VS2010)

//--------------------------------------------------------------------------------------------------...
  • u013025310
  • u013025310
  • 2014年03月12日 20:58
  • 9685

OGRE 2.1 使用VS2015编译的过程以及问题的解决

OGRE 2.1 使用VS2015编译的过程以及问题的解决
  • z_dmsd
  • z_dmsd
  • 2017年03月21日 20:44
  • 1174

Ogre 1.10 Android平台编译笔记

编译平台Windows + CMake +VisualStudio 2015安装Android SDK 、Android NDK和Mercurial怎么安装就不介绍了。NDK版本我使用的是r10e。安...
  • shangguanwaner
  • shangguanwaner
  • 2016年02月05日 21:48
  • 1926

Ogre源码编译及HelloWorld程序

Ogre 3D是一个成熟,稳定,可靠,灵活,跨平台,而且拥有丰富功能实时3D图形库,首先介绍Ogre源码编译(跟直接安装Ogre-SDK不一样).  首先下载下面三种组件: 1.源码地址:http:...
  • zhangkun77
  • zhangkun77
  • 2015年07月17日 14:56
  • 662

Linux下编译安装源代码的三个步骤

Linux下编译安装源代码无非就是三个步骤,./configure,make,make install 第一步进入源代码的目录 运行命令 1 ./configure --prefix=安装目录 --...
  • bbwangj
  • bbwangj
  • 2017年09月14日 09:03
  • 292

MAC OSX10.9 下编译使用OGRE1.9及CEGUI 0.8.3(一)OGRE依赖库的编译

MAC OSX10.9 下编译使用OGRE1.9及CEGUI 0.8.3(一)OGRE依赖库的编译     大学毕业后一直从事银行信贷工作,三年的时间,自己改变了好多,偶尔看到书架上落满...
  • u012419410
  • u012419410
  • 2015年01月06日 21:47
  • 788

linux+ogre环境搭建

主要参考http://www.ogre3d.org/tikiwiki/tiki-index.php?page=Home中的系列文章。 我采用的是从源码编译方式来创建OGRE。 一、安装一些依赖包。  ...
  • xiaogugood
  • xiaogugood
  • 2014年01月17日 16:40
  • 909
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Ogre源码编译步骤
举报原因:
原因补充:

(最多只允许输入30个字)