将 IrrKlang 与 Ogre 一起使用

Posted

技术标签:

【中文标题】将 IrrKlang 与 Ogre 一起使用【英文标题】:Using IrrKlang with Ogre 【发布时间】:2012-11-09 15:48:49 【问题描述】:

我正在尝试在我的 Ogre3D 项目中设置声音。我已经安装了 irrKlang 1.4.0 并将它的 include 和 lib 目录添加到我的项目 VC++ Include 和 Library 目录中,但是当我尝试构建时仍然出现链接器错误。有什么建议吗?

(Error 4007 error LNK2019: 无法解析的外部符号 "__declspec(dllimport) 类 irrklang::ISoundEngine * __cdecl irrklang::createIrrKlangDevice(枚举 irrklang::E_SOUND_OUTPUT_DRIVER,int,char const *,char const *)" (_imp?createIrrKlangDevice@irrklang@@YAPAVISoundEngine@1@W4E_SOUND_OUTPUT_DRIVER@1@HPBD1@Z) 在函数“public: __thiscall”中引用 SoundManager::SoundManager(void)" (??0SoundManager@@QAE@XZ)

【问题讨论】:

【参考方案1】:

好的,看了一会儿之后,我似乎犯了两个错误。

    irrKlang 的 lib 目录分为两部分,因此我应该使用 (IRRKLANGDIRECTORY)\lib\Win32-visualStudio,而不是将 (IRRKLANGDIRECTORY)\lib 添加到我的库目录中。

    仅包含 lib 目录还不够,我还需要在我的班级顶部指定使用 irrklang 库文件 (#pragma comment(lib, "irrklang.lib"))。

【讨论】:

以上是关于将 IrrKlang 与 Ogre 一起使用的主要内容,如果未能解决你的问题,请参考以下文章

irrklang 引擎未在无效时声明 [重复]

获取 irrklang - 在 sharpdevelop 工作

二进制文件不可执行 - c++ & irrklang

关于OGRE与OSG的简单比较

irrKlang 从 play2D() 获取 ISound*

使用 LibTiff 编译 Ogre - 未定义的参考