Ogre3D安装与GCC, C::B在Win8
Ogre3D installation with GCC, C::B in Win8
我试图设置一个Ogre3D v1.8.1与代码块12.11,其中配置了GCC 4.7.0。我下载了预编译版本的Ogre3D for MinGW,启动示例编译和执行程序没有错误,但在初始化Ogre3D(驱动程序选择界面)时出现一些错误,应用程序冻结。在网上仔细搜索发现,网上有很多帖子,很多人都停留在那个无法通过的程序阶段。
C::B编译器报告Ogre3D屏幕崩溃
In __cxa_throw () (D:Ogre3D_181OgreSDK_MinGW_v1-8-1binDebugOgreMain_d.dll)
87 ..........OgreMainsrcOgreConfigFile.cpp: No such file or directory.
#1 0x009507e9 in Ogre::ConfigFile::loadDirect (this=0x28fc48, filename=...,
separators=..., trimWhitespace=true) at ........OgreMainsrcOgreConfigFile.cpp:87
Debugger finished with status 0
Ogre3D.log报告如下所示
13:19:34: MovableObjectFactory for type 'BillboardSet' registered.
13:19:34: MovableObjectFactory for type 'ManualObject' registered.
13:19:34: MovableObjectFactory for type 'BillboardChain' registered.
13:19:34: MovableObjectFactory for type 'RibbonTrail' registered.
13:19:34: OGRE EXCEPTION(6:FileNotFoundException): 'plugins.cfg' file not found! in
ConfigFile::load at ..........OgreMainsrcOgreConfigFile.cpp (line 88)
根据Ogre3D和C::B产生的投诉,似乎我没有正确地传递正确的include/source/lib目录和外部依赖项,但实际上我遵循了官方Ogre3D网站的说明,我确信这是正确的,因为否则编译器应该在编译期间抛出异常。除此之外,其他用户即使正确配置了环境,也会遇到类似的问题。
另一个错误
07:09:37: OGRE EXCEPTION(7:InternalErrorException): Unable to compile Cg program
Ogre/DualQuaternionHardwareSkinningTwoWeightsTwoPhaseCg: The compile returned an
error.DualQuaternion_Common.cg(167) : warning C7019: "blendWgt" is too large for
semantic
"BLENDWEIGHT", which is size 1
(0) : error C6007: Constant register limit exceeded; more than 96 constant registers
needed to compiled program
(0) : error C6007: Constant register limit exceeded; more than 96 constant registers
needed to compiled program
(0) : error C6007: Constant register limit exceeded; more than 96 constant registers
needed to compiled program
in CgProgram::compileMicrocode at
............PlugInsCgProgramManagersrcOgreCgProgramManagerDll.cpp (line 67)
感谢您的指导,
不抱怨源目录或外部依赖。它在抱怨缺少plugins.cfg
文件。日志中最相关的一行是:
OGRE EXCEPTION(6:FileNotFoundException): 'plugins.cfg'文件不存在!在…
文件的位置被传递给Root的构造函数。演示可能使用工作目录的根目录。确保正确设置了工作目录,并且文件在该路径下。
参见这个指南建立一个应用程序- CodeBlocks
如果你想在Code::Blocks中运行你的可执行文件,你需要在项目设置中设置"工作目录"answers"命令",像这样:(见该页的图片)
你可以在本教程中找到更多关于初始化和plugins.cfg的基本信息
关于你的第二个错误:
正如消息明确指出的那样,您的Cg程序试图使用比机器上可用的寄存器更多的寄存器。这取决于显卡(你用的是哪一个)?
根据你想要实现的目标,你可能需要稍微调整一下着色器,使它们保持在硬件支持的范围内。
看这个Ogre3D论坛的例子,类似的事情发生在DualQuaternion着色器,用户只是减少了骨计数。在ATI卡上,通常在该着色器中只支持24个骨骼。
重要提示:该区域的许多问题已在Ogre v1.9中修复,因此我建议您尽可能更新。V1.9已经稳定了一段时间了(事实上我们已经在准备下一个版本v1.0)。
- 在Ubuntu 16.04上安装Cilk时出现问题
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- C++:如何在CLion IDE中安装Boost
- 安装opencv失败-粘贴CMakeError.log的内容
- 在cygwin中测试新的boost安装时出现cpp错误
- 有人安装"IITB Simplecpp in mac"吗?
- 我可以在 Arduino 的库文件夹之外安装库吗?
- Mingw-64 在构建和安装后不会编译 openCV 代码
- 为什么构建目录中新构建的共享库与安装目录中的副本具有不同的依赖项集?
- 安装 libc++ 时出现问题
- 安装MinGW后C++编译器不起作用?
- 介子复制/安装头文件到输出目录并保持文件夹结构
- 无法安装 R 包 "nloptr"(Ubuntu 16.04 上的 R3.6.2) - C++编译器问题
- 如何在 Ubuntu 上安装 OpenCV for C/C++
- 检查是否安装了 windows10 C++
- 安装 psutil 和为 pypy 配置期间出错
- 如何在 Debian 10 上安装 CPP 手册页?
- 如何更改使用 CPack 安装的可执行文件的名称?
- 使用 MinGW 在 Windows 上安装 GMP 时出错
- Ogre3D安装与GCC, C::B在Win8