最近在学习图形学,想看看OGRE源码,于是就去OGRE官网下载源码,配置环境,这里记录一下。鉴于电脑太破,VS2010比较慢,所以使用VS2008。

准备工作:

CMake2.8       下载地址:http://www.cmake.org/files/v2.8/cmake-2.8.12.1-win32-x86.exe

OGRE             下载地址:http://www.ogre3d.org/download/source,OGRE源码及其依赖库都要下载,如图1:

图1 OGRE源码下载

编译源码:

1、安装CMake。已安装CMake的童鞋可以跳过这一步;

2、编译OGRE依赖库。

1)解压OGRE依赖库(图1最后一个),用CMake生成VS2008的工程;

2)打开CMake生成的工程,如图2所示,右键单击“ALL_BUILD”,选择“生成”;

3)在OGRE依赖库的工程目录下多了个“ogredeps”文件夹,里面的文件是最后需要的OGRE依赖库,如图3所示;

图2 编译OGRE依赖库

图3 生成的OGRE依赖库

3、编译OGRE源码

1)解压OGRE源码,将上一步的“ogredeps”文件夹改名为“Dependencies”拷贝到解压后的目录,如图4所示;

2)用CMake生成其VS2008的工程,如图5所示,源路径选择解压后的OGRE源码路径,目标路径选择编译后工程存放的位置,单击“Configure”,在图6界面选择VS2008,单击“Finish”,稍等片刻;

3)若Configure成功,最后一行如图7所示,单击“Generate”,在目标目录下生成VS2008的OGRE工程;

4)在目标目录打开“OGRE.sln”,生成“BUILD_ALL”,一个多小时以后,工程生成完毕,如图8所示。

图4 解压后的OGRE源码

图5 CMake生成OGRE工程文件

图6 选择VS2008

图7 成功Configure的工程

图8 VS2008下的OGRE工程

4、拷贝第二步生成的依赖库中“\ogredeps\bin\Debug”的“cg.dll”和“OIS_d.dll”到第三步生成的工程的debug目录,我的电脑上路径是“F:\ogre_src_v1-8-1_VS2008\bin\debug”。若没有拷贝这两个动态链接库,运行“SampleBrowser”工程时会提示缺少dll。

效果

到此为止,OGRE的源码环境已成功配置,运行“SampleBrowser”,可以看到OGRE的演示样例,如图9、10所示。

图9 OGRE演示样例

图10 OGRE演示样例

OGRE1.8.1源码编译(VS2008)的更多相关文章

  1. Ogre1.8.1源码编译

    本文的编译环境为Windows7_SP1 + VS2010_SP1 + CMake2.8.11   :) 资源下载 1. 下载Ogre1.8.1的源代码,下载链接地址:http://www.ogre3 ...

  2. Ogre1.9 源码编译

    我们首先需要下载. 1.cmake http://www.cmake.org/download/ (选择window安装包最方便) 2.Ogre1.9源代码 https://bitbucket.org ...

  3. GDAL源码编译

    转自阿Fai, GDAL源码编译 在这里,我使用源码编译出C#可以使用的dll静态文件. 一.简单的编译 1.简单的认识 首先进入GDAL的源代码目录,可以看到有几个sln为后缀的文件名,比如make ...

  4. Android 5.0源码编译问题

    如果是自己通过repo和git直接从google官网上download的源码,请忽略这个问题,但是由于google在国内被限制登录,通过这一种方法不是每个人都能download下来源码,通常的做法就是 ...

  5. Android stdio Apktool源码编译

    Android Apktool源码编译 标签(空格分隔): Android Apktool 源码编译 需求 习惯NetBeans调试smali需要用Apktool反编译apk,需要用-d的参数才能生成 ...

  6. SSH/SSL 源码编译安装简易操作说明

    环境:CentOS 6.7 安全加固需求,由于某盟扫描系统主机有SSL系列漏洞,客户要求必须修复: 解决方案:将SSH/SSL升级到最新版本,删除SSL旧版本(实测不删除旧版本某盟扫描无法通过). 当 ...

  7. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  8. World Wind .NET源码编译问题处理

    World  Wind  .NET源码编译问题处理 下载了World_Wind_1.4.0_Source源码(http://worldwindcentral.com/wiki/NASA_World_W ...

  9. 源码编译安装 MySQL 5.5.x 实践

    1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...

随机推荐

  1. hdu 4685 简单匹配+Tarjan算法

    思路:首先看到这题以为能用poj1904的模版直接A掉,WA了几次,然后又TLE了几次.还是想到了正解. 一开始我想的大致方向已经是对的了.先是由王子向每个喜欢的公主建边,再求一次最大匹配,找出匹配后 ...

  2. 4632 NOIP[2015] 运输计划

    4632 NOIP[2015] 运输计划  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 大师 Master 题解       题目描述 Description 公元 2044 ...

  3. 锋利的jQuery第2版学习笔记4、5章

    第4章,jQuery中的事件和动画 注意:使用的jQuery版本为1.7.1 jQuery中的事件 JavaScript中通常使用window.onload方法,jQuery中使用$(document ...

  4. html5 之 canvas 相关知识(三)API-strokeStyle-shadow相关

    strokeStyle定义和用法 strokeStyle 属性设置或返回用于笔触的颜色.渐变或模式. context.strokeStyle=color|gradient|pattern;//指示绘图 ...

  5. iOS开发那些事--性能优化–内存泄露问题的解决(转)

    内存泄漏问题的解决 内存泄漏(Memory Leaks)是当一个对象或变量在使用完成后没有释放掉,这个对象一直占有着这块内存,直到应用停止.如果这种对象过多内存就会耗尽,其它的应用就无法运行.这个问题 ...

  6. SQL自动补充其他月份为0

    ,) ), Sales int,Dates datetime) insert into ProductSale ,'2014-01-05' UNION ALL ,'2014-02-05' UNION ...

  7. js 后台弹窗

    后台弹出操作成功,失败信息 /// <summary> /// 弹出信息,并跳转指定页面. /// </summary> public static void AlertAnd ...

  8. iOS - 基于蓝牙数据交换的环境监测(温度、湿度、光照、粉尘、噪声)

    一.蓝牙外设的数据接收 二.App端显示获取数据            

  9. 在swift中使用MJRefresh

    cocoapod导入的,并且桥接已经完成,但是就是不提示方法,醉了,

  10. int/double/string使用

    在计算机中存储数据和儿童在抽屉中存放物品很类似. 例如: 要在计算机中存一个数字50,需要两句话. int a;  //将要放的物品告诉家长 a=50;  //将物品放到某个抽屉中 计算机存储变量的过 ...