- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
希望这对很多在Windows上安装OGRE的人有所帮助。我做到了,我不希望其他任何人遭受同样的折磨。
我试图通过解释比其他网站更多的步骤和细节来使这种解释有所不同。其他人甚至都不会想到录制的问题和解决方案。
最佳答案
从源代码构建Ogre的正常方法是:
获取新的Ogre自我提取程序(这些说明适用于Ogre 1.7.3版)
下载并安装CMake
下载并安装DirectX SDK
在具有至少4.3GB空间的驱动器中创建一个名为“OGRE”的文件夹。
将食人魔源提取到OGRE文件夹中。
下载Ogre依赖项并将其解压缩到OGRE文件夹。
运行CMake并选择Visual Studio 10作为默认编译器。
指定Ogre的源目录。这是ogre_src_v1-7-3文件夹。
还要在Windows中将OGRE_HOME环境变量设置为ogre_src_v1-7-3的完整路径。 (通过右键单击我的计算机,属性,高级,环境变量,用户变量,新设置它)
为CMake指定目录以放置其创建的二进制文件。您可以在OGRE文件夹中创建一个名为“Binaries”的目录。
在CMake中按“配置”。
它会显示很多红线条目。对于OGRE_DEPENDENCIES_DIR条目,指定您上面提取的依赖文件夹的路径。
再次单击“配置”,所有这些红线将变为白色,这表示配置正常。
点击“生成”。
CMake就是这样。
转到binaries文件夹,您将看到OGRE.sln。双击以在VS2010中将其打开。
右键单击“ALL-BUILD”项目并进行构建,或按F5键(如果按F5键,则在构建完成时会说它无法运行,这是可以的,因为并非所有构建都意味着运行)
在具有1GB RAM的双核2GHz PC上,构建过程大约需要30分钟。
将“示例浏览器”项目设置为 Activity 项目,然后按F5键运行它。
而已!在您的系统上配置了Ogre。
================================================== ====
但是,如果您遇到构建问题:
为避免出现很多问题,请确保从Internet上以原始文件夹/zip文件/自解压程序的形式获取Ogre源代码,并在计算机上安装DirectX SDK。在系统上为Ogre创建一个文件夹,并将源代码文件夹存储在该文件夹中。
完成后,Ogre源文件,二进制文件和内置文件将总共占据约4.3GB的磁盘空间。
[警告:请勿在系统上安装Visual Studio 2008。如果这样做了,并且如果它导致了问题(严重错误C1902:程序数据库管理器不匹配;请检查您的安装),则在构建ogre.sln时,如果使用VS2010进行构建,则只需删除mspdb100.dll文件即可。 (尚未确认问题是否真的是由于安装了VS2008。可能是由于在此文件中写入了一个步骤,其中mspdb100.dll被复制到了不应该存在的文件夹中。用VS2008重新构建Ogre,它显示“严重错误”,然后删除mspdb80.dll是解决方案)]
将Ogre源提取到系统中的文件夹中。像这样的目录路径真是太好了:
二进制文件的“your-root\Ogre\Binaries\”
和
*“*您的根\Ogre\ogre_src_v1-7-3\” *
CMake:
下载并安装CMake,这有助于配置Ogre以将其安装到系统中。
运行CMake可执行文件。
选择“将cmake添加到当前用户的系统PATH”。
找到安装cmake的位置,然后运行\CMake 2.8\bin\cmake-gui.exe
指定二进制文件和源代码的目录。
单击CMake GUI上的“高级”复选框
将CMAKE_CXX_COMPILER设置为your-Visual-Studio-installation-path/VC/bin/cl.exe
将CMAKE_C_COMPILER设置为your-Visual-Studio-installation-path/VC/bin/cl.exe
将CMAKE_RC_COMPILER设置为您的RC.exe文件所在的目录/RC.Exe(在“程序文件”文件夹中进行搜索,您很可能会找到rc.exe)
单击“配置”,它可能会给出一个找不到mspdb100.dll的错误。
从您的Visual Studio安装路径\Common7\IDE复制mspdb100.dll并将其粘贴到您的Visual Studio安装路径\VC\bin(不是正确的方法,但是很好...;如果您在Ogre的构建过程中出现“显示程序数据库管理器不匹配”之类的错误,则您以后可能必须删除此文件。)
配置完成后,单击“生成”,将生成ogre.sln文件或“.dsw”文件,单击该文件将创建ogre.sln文件。更多信息请参见下文。
注意: Cmake维护一个缓存。要随时重新配置cmake,必须清除缓存。 Cmake 2.8在菜单中具有清除缓存的选项。如果安装cmake 2.6.4,则可以使用窗口底部的按钮清除缓存。清除缓存后,就可以选择编译器了。我选择了VS2006,并且未更改 native 编译器的任何选项。照原样保留。
注2:当我安装Visual C++ 2006时,C和C++编译器现在能够编译cmake的测试文件,但是cmake找不到位于ogre_src_v1-7-3的bin文件夹中的某个dll。它正在\tpcsed.com\projectshare\mapex\OGRE3D文件夹中查找,因此我将bin文件夹复制到\tpcsed.com\projectshare\mapex\OGRE3D文件夹中。一切都很好。
如果您的Visual Studio版本无法实现上述配置,则可能必须安装VS2006才能指定正确的c1.exe和rc.exe文件。 VS2010的c1.exe和rc.exe对我不起作用。
编译任何依赖项:
提取OgreDependencies_MSVC_20101231.zip
转到您的root\Ogre\ogre_src_v1-7-3\Dependencies\src
使用VS2010(或与您的VS相对应的sln文件)打开OgreDependencies.VS2010.sln
右键单击解决方案并构建用于调试和发布的解决方案(右键单击解决方案>属性>配置>配置管理器按钮> Activity 解决方案配置组合框)
建筑食人魔:
单击your-root\Ogre\ogre_src_v1-7-3\bin\ogre.dsw文件,并确保该文件在您使用的VS版本中打开。在我的情况下是VS2010(如果您在CMake中使用VS2006,则将有一个dsw文件,它将解决方案转换为您的VS版本)
将创建一个ogre.sln文件。双击它。
右键单击ALL_BUILD项目,然后单击“生成”。对于发行版和调试,您都应该这样做,但是对我而言(暂时)进行调试就足够了。
右键单击INSTALL项目,然后单击“生成”。对于发行版和调试,您都应该这样做,但是对我而言(暂时)进行调试就足够了。
执行上述2个步骤,或单击“清理”并构建整个解决方案。
如果发现错误,请搜索构建失败的项目,阅读错误并进行更正。所有项目都必须成功构建,至少要进行调试。
如果构建失败,则清理项目并重新构建。或从cmake步骤重新开始。
如果存在构建错误,请通过列出的错误找出原因。可能是因为您没有在系统上安装DirectX SDK,或者是因为在ogre.sln项目属性中错误地指定了某些路径。检查所有值以查看所有路径是否正确。
而已!
可选的依赖项,如TBB,Boost等。我没有尝试安装。食人魔没有它就可以工作。
正在运行:
尝试一个小的Ogre应用。您应该能够运行的最简单的方法是:
#include <Ogre.h>
//code is from http://blog.tidalware.com/2009/06/ogre-and-visual-studio-beginners-faq/
int main(int argc, char* argv[])
{
Ogre::Root* root = new Ogre::Root("plugins.cfg", "ogre.cfg", "Ogre.log");
delete root;
return 0;
}
$(TargetPath)
等变量的路径,只需单击在单击任何属性值时显示的组合框,然后会打开一个小对话框。单击,然后单击“宏>>”以查看值/路径。
$(OGRE_HOME)
一样使用它。
关于windows - 如何使用Visual Studio在Windows上构建OGRE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7776642/
为什么我可以在控制台 window.window.window.window 中执行此操作并无限追加 .window 并返回 DOM 窗口? 最佳答案 因为 window 对象有一个指向它自身的 wi
Windows管理员用户和系统用户之间有什么权限区别吗? 有些时候,我必须将 cmd 窗口提升到系统权限才能删除一些文件。这可能是因为系统用户锁定了文件,或者系统用户可能具有更高的访问权限,我希望找出
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
Windows 服务和 Windows 进程之间的区别是什么? 最佳答案 服务是真正的 Windows 进程,没有区别。服务的唯一特殊之处在于它由操作系统启动并在单独的 session 中运行。一个独
我有一个 Windows 网络 (peer-2-peer) 以及 Active Directory,我需要记录向服务器发送任何类型打印的用户的名称。我想编写一个程序来记录他们的用户名和/或他们各自的
当我让一个 Windows 服务尝试安装另一个 Windows 服务时遇到问题。 具体来说,我有一个 TeamCity 代理在 Windows 2008 AWS 实例上为我运行测试。这些测试是用 Ja
我创建了一个应用程序来接收广播的 Windows 消息,效果很好。当我把它变成一个服务、安装它并启动服务时,该服务没有收到消息。 最佳答案 服务可能必须被授予访问桌面的权限。从服务属性、“登录”选项卡
我正在使用 Delphi 2010 编写应用程序。我希望在 Windows 启动时启动我的应用程序。我需要它在最新版本的 Windows XP、7.0 和最新的服务器中工作。 将其存储在以下关键工作下
我想开发一个适用于所有三个版本的 Windows XP、Vista 和 7 的应用程序。该应用程序允许人们选择要打开的文件,并允许他们在某些操作后保存文件。三个版本的 Windows 中的每一个都有不
对于\Windows\中的文件类型与\Windows\System32 中的文件类型是否有标准约定? 我正在开发一个 SDK,其中包含各种 DLL、帮助程序 exe 和 Windows 服务 exe。
要求是,必须在 WINDOWS7 机器上配置自动登录,但是这个自动登录应该等待(即延迟)直到另一个 Windows 服务发出继续自动登录的信号。 我使用了自定义凭据提供程序,它在其中等待另一个 Win
很抱歉,这不是一个大问题,而是更多的帮助人们解决这些特定问题的方法。我正在解决的问题要求使用串行I/O,但主要在Windows CE 6.0下运行。但是,最近有人问我是否也可以在Windows下运行该
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
不幸的是 SC 命令在 W2000 上还不可用,所以我不能使用它。 我正在尝试检查服务是否在 W2000 服务器上运行,如果它没有运行,脚本应该能够启动该服务。 如何在 Windows 2000 上执
如何在登录到 Windows 之前启动 Windows 窗体应用程序?是否可以在登录到 Windows 之前启动 Windows 窗体应用程序?如果不是,我是否有机会在登录前启动 Windows 服务
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我想在 XML 文件中区分 Windows XP 和 Windows 7。我想我会在 XML 中为它使用一个环境变量。 但是我找不到在 Windows 中定义的任何系统环境变量来提供此信息。 我看到了
有谁知道我可以在注册表中的哪个位置检查机器上是否安装了这些应用程序: Windows 通讯录 Windows 联系人 最佳答案 来自 Microsoft:我知道它说的是 win 95,但 reg 是一
我正在尝试从我的 Windows 服务器调用放置在远程 Windows 服务器上的批处理文件。我在远程服务器上安装了 freeSSHd。我尝试使用 putty/plink 但没有结果。 我使用的命令语
( 大家好。我是 Windows 编程的新手,所以如果已经有人问过我,我提前道歉,我只是不知道要搜索什么,但这个问题一直让我发疯,我知道有人可能真的很容易回答这个问题。) 我的公司有一个在 Windo
我是一名优秀的程序员,十分优秀!