最近在学习图形学,想看看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. [转]C# 获取系统文件图标

    //获取文件的图标 this.Icon = GetFileIcon(@"c:\gdiplus.dll"); //获取文件夹图标 this.Icon = GetDirectoryIc ...

  2. Networking - Ethernet II 帧

    Ethernet II 帧格式 DA SA Type Playload FCS DA(Destination Address): 该字段有 6 个字节,表示目的 MAC 地址. SA(Source A ...

  3. Networking - ICMP 协议

    发送到远程计算机的数据通常发经过一个或多个路由器,这些路由器在把数据传输到最终目的地的过程中可能发生多种问题.路由器利用 ICMP 把问题通知给源 IP.ICMP 还有用于其他调试和排错的功能. IC ...

  4. Messenger实现Android IPC

    当Service不需要支持并发操作时Messenger会非常有用.Messenger类使用Handler执行每个传入的消息,所有客户端的调用都按顺序运行在同一个线程上,这和AIDL是有区别的,AIDL ...

  5. android使用Intent操作拨打号码发送短信

    Activity程序Activity.java package com.example.intentcaseproject; import android.net.Uri; import androi ...

  6. MYfirst

    终于有了自己的博客了,啊哈哈!

  7. Android之文字点击链接

    定义textView1和textView2并获得组件. String html = "<font color='red'></font>"; html += ...

  8. 北大ACM(POJ1753-Flip Game)

    Question:http://poj.org/problem?id=1753 问题点:穷举. #include <iostream> using namespace std; ][];/ ...

  9. Linux文件系统结构

    准备写个Linux基础知识总结, 第一个想到的就是整理一个常用系统文件夹结构的说明,园子里“Aric小屋”的结构图整理的不错,我就不重复整理了,故借用一下

  10. 第一篇、jQuery的使用

    1.jquery 的优势 >轻量级 >强大的选择器 >出色的DOM操作封装 >完善的事件和事件对象的兼容机制 >完善的ajax >不污染全局变量($可以随时交出控制 ...