Error 2 error LNK2019: unresolved external symbol "__declspec(dllimport) class
irrklang::ISoundEngine * __cdecl irrklang::createIrrKlangDevice(
enum irrklang::E_SOUND_OUTPUT_DRIVER,int,char const *,char const *)"
(__imp_?createIrrKlangDevice@irrklang@@YAPAVISoundEngine@1@W4E_SOUND_OUTPUT_DRIVER@1@HPBD1@Z)
referenced in function "public: __thiscall Sounds::Sounds(void)" (??0Sounds@@QAE@XZ)
C:\Users\Shum\Dropbox\DM2231_Lab(13)\DM2231_Lab\DM2231_Lab\Sounds.obj DM2231_Lab
これは、現在のプロジェクトに Irrklang サウンドをリンクしようとしたときに発生したエラーです。奇妙なことは、私の他のすべてのプロジェクトで機能していることです。このプロジェクトの唯一の違いは、Irrklang ファイルを Web から最新のものに更新したことです。
#include <irrKlang.h>
using namespace irrklang;
#pragma comment(lib, "irrKlang.lib") // link with irrKlang.dll
私が見る限り、ここには何も問題はありません。私のプロジェクト プロパティでは、リンカー入力に irrKlang.lib の追加の依存関係が含まれていました。私のfreeglut.libが機能しているので、それが適切な場所にあることはわかっています。
問題は、ヘッダー ファイルを表示できるが、ライブラリ (または dll ファイル) にアクセスできないためだと思います。しかし、私の freeglut は正常に動作しています。本当に困惑しました。
Microsoft Visual Studio 2013 を使用しています。