天天看点

在VS2008(VC9)中如何正确编译Ogre源码

准备工作:

1、首先安装Microsoft Visual Studio 2008(开发工具,不用介绍了);

2、安装DXSDK_Aug09 (此处我安装在D:\Program Files\Microsoft DirectX SDK (August 2009)目录下) (完全安装大约需要1G空间);

3、下载Ogre-v1-6-4源码下载地http://sourceforge.net/projects/ogre/files/ (Ogre-v1-6-4 Source For Windows);

4、下载Visual C++.Net 2008 (9.0) Precompiled Dependencies(OgreDependencies_VC9_Eihort_20080203.zip);

编译配置:

1、解压ogre-v1-6-4.zip源码包到你的工作目录(我的为E:/ogre),(请确保磁盘有足够的空间,正确编译后文件综合大于3.3G);

2、解压OgreDependencies_VC9_Eihort_20080203.zip ,将解压出来的两个文件夹Samples和Dependencies拷贝到ogre目录下,弹出“文件或目录已存在”,直接覆盖即可;

3、打开ogre目录下的Ogre_vc9.sln打开ogre vs2008源码解决方案;

4、选中OgreMain工程,打开属性页进行如下配置:

(1) 将配置属性->C/C++->常规->调试信息格式:用于“编辑并继续”的程序数据库(/ZI)更改为C7兼容(/Z7);

(2) 将配置属性->C/C++->代码生成->启用字符串池 否 更改为:是(/GF);

(3) 将配置属性->连接器->调试->生成调试信息 改为:是(/DEBUG);

(4) 保存修改。

5、打开Ogre_vc9解决方案下的RenderSystem_Direct3D9工程的属性页:

(1) 将配置属性->C/C++->常规->附加包含目录 添加Microsoft DirectX SDK (August 2009)目录下的include目录;

(2) 将配置属性->连接器->常规->附加常规目录 添加Microsoft DirectX SDK (August 2009)\Lib目录下的x86目录(我的电脑是x86平台的嘛);

5、编译整个解决方案耐心等待,编译成功后显示

==============生成:成功50个,失败0个,最新0个。跳过0个================

编译Demo:

正确编译后执行任意Demo,会提示:‘无法找到组件,没有OgreMain_d.dll,因此这个应用程序未能启动,重新安装应用程序可能修复此问题’。这是由于Demo的可执行文件与OgreMain的和其他工程的DLL不在同一目录下造成的。要正确运行Demo请对每个Demo进行如下配置:

1、打开当前的Demo项目的属性页,将

(1) 配置属性->常规->输出目录 更改为:..\..\Common\bin\Debug 即:ogre源码目录下的Samples目录下的Common\bin\Debug目录;

在VS2008(VC9)中如何正确编译Ogre源码

(2) 配置属性->调试->工作目录 更改为:..\..\Common\bin\Debug;

在VS2008(VC9)中如何正确编译Ogre源码

(3) 删除配置属性->生成事件->生成后事件 ->命令行 copy $(OutDir)\$(TargetFileName) ..\..\Common\Bin\$(ConfigurationName);

在VS2008(VC9)中如何正确编译Ogre源码

(4) 确定保存。

2、将Demo项目依赖项选项->依赖于全部取消。(为了减少不必要的编译时间。不然的话,编译每个demo都会重新编译其依赖项)

在VS2008(VC9)中如何正确编译Ogre源码
在VS2008(VC9)中如何正确编译Ogre源码
在VS2008(VC9)中如何正确编译Ogre源码

3、重新编译Demo,执行,大家会发现,源码配置已成功

在VS2008(VC9)中如何正确编译Ogre源码
在VS2008(VC9)中如何正确编译Ogre源码
在VS2008(VC9)中如何正确编译Ogre源码

补充说明:

大家在使用OgreSDK_vc9_v1-7-2.exe编译自带例子时,可能会遇到如下错误:

在VS2008(VC9)中如何正确编译Ogre源码

这个是由于例子项目配置里进行了预链接,你可以将其删除或者改为你自己的正确路径:

在VS2008(VC9)中如何正确编译Ogre源码

删除之后再编译SampleBrowser即可:

在VS2008(VC9)中如何正确编译Ogre源码

另外,当你运行SampleBrowser出现找不到Rendering System时,你可能需要注意你是否放到了中文路径下了,必须改为非中文目录哦!!!切记,我就苦脑了半天哦!!!

在VS2008(VC9)中如何正确编译Ogre源码

本文来自CSDN博客,转载请标明出处:

http://hi.baidu.com/houwenbin1986/blog/item/fc77ce5541931c53d009065a.html

http://blog.csdn.net/zeroboundary/archive/2008/11/30/3414086.aspx

继续阅读