【发布时间】:2012-09-09 19:46:35
【问题描述】:
我希望我可以问“我需要链接哪些库”,但它非常具体(wwise 引擎集成),所以我需要帮助自己解决这个问题。当我尝试创建在头文件中定义的类型的变量时会出现问题(编译器发现头文件没有问题)。我收到 22 个链接器错误,但我不明白读出的内容,有人可以引导我完成它并准确地告诉我缺少哪个符号,这样我就可以弄清楚我缺少哪些库?除了没有链接的库之外,它可能是其他任何东西吗? Wwise 附带了一个演示项目,它可以编译但不会链接到比我更多的库。
这里有 5 个错误。我正在使用视觉工作室。
1>main.obj : error LNK2019: unresolved external symbol "public: enum AKRESULT __thiscall CAkDefaultIOHookBlocking::Init(struct AkDeviceSettings const &,bool)" (?Init@CAkDefaultIOHookBlocking@@QAE?AW4AKRESULT@@ABUAkDeviceSettings@@_N@Z) referenced in function "bool __cdecl InitSoundEngine(void)" (?InitSoundEngine@@YA_NXZ)
1>main.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall CAkDefaultIOHookBlocking::GetDeviceDesc(struct AkDeviceDesc &)" (?GetDeviceDesc@CAkDefaultIOHookBlocking@@UAEXAAUAkDeviceDesc@@@Z)
1>main.obj : error LNK2001: unresolved external symbol "public: virtual unsigned long __thiscall CAkDefaultIOHookBlocking::GetDeviceData(void)" (?GetDeviceData@CAkDefaultIOHookBlocking@@UAEKXZ)
1>main.obj : error LNK2001: unresolved external symbol "public: virtual enum AKRESULT __thiscall CAkDefaultIOHookBlocking::Read(struct AkFileDesc &,struct AkIoHeuristics const &,void *,struct AkIOTransferInfo &)" (?Read@CAkDefaultIOHookBlocking@@UAE?AW4AKRESULT@@AAUAkFileDesc@@ABUAkIoHeuristics@@PAXAAUAkIOTransferInfo@@@Z)
1>main.obj : error LNK2001: unresolved external symbol "public: virtual enum AKRESULT __thiscall CAkDefaultIOHookBlocking::Write(struct AkFileDesc &,struct AkIoHeuristics const &,void *,struct AkIOTransferInfo &)" (?Write@CAkDefaultIOHookBlocking@@UAE?AW4AKRESULT@@AAUAkFileDesc@@ABUAkIoHeuristics@@PAXAAUAkIOTransferInfo@@@Z)
【问题讨论】:
-
如错误所述,缺少几个符号(均来自
CAkDefaultIOHookBlocking类):Init、GetDeviceDesc、GetDeviceData、Read和Write。无论库或目标文件包含CAkDefaultIOHookBlocking类的实现,这都是您正在寻找的。谷歌搜索被称为“gmwwise”的东西被点击:code.google.com/p/gmwwise -
我希望您没有在针对 x64 的项目中链接 x86 库。
-
据我所知,一切都是 x86。
标签: c++ visual-studio linker static-libraries