Hello,
I've tried looking online to see if anyone else had this error but no luck.
I may be overlooking something but this error has been bugging me.
I'm getting a linker error when I call the AK::MemoryMgr::Init() function.
Now the funny thing is it compiles in 32 bit Debug and Release no problem, and also 64 release.
The only time I get these linker errors is when I compile in 64 Debug mode.
I checked my project settings on Visual Studio 2013 on all the settings and even made a new project to see if
had to be something with my settings.
I'm getting these linker errors.
1>AkSoundEngine.lib(AkMonitor.obj) : error LNK2019: unresolved external symbol "public: __cdecl Serializer::Serializer(class AK::IWriteBuffer &,bool)" (??0Serializer@@QEAA@AEAVIWriteBuffer@AK@@_N@Z) referenced in function "public: __cdecl MonitorSerializer::MonitorSerializer(bool)" (??0MonitorSerializer@@QEAA@_N@Z)
1>AkSoundEngine.lib(AkMonitor.obj) : error LNK2019: unresolved external symbol "public: __cdecl Serializer::~Serializer(void)" (??1Serializer@@QEAA@XZ) referenced in function "public: virtual __cdecl MonitorSerializer::~MonitorSerializer(void)" (??1MonitorSerializer@@UEAA@XZ)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(char)" (?Put@Serializer@@QEAA_ND@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(unsigned char)" (?Put@Serializer@@QEAA_NE@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(unsigned short)" (?Put@Serializer@@QEAA_NG@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(unsigned long)" (?Put@Serializer@@QEAA_NK@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(unsigned __int64)" (?Put@Serializer@@QEAA_N_K@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(float)" (?Put@Serializer@@QEAA_NM@Z) referenced in function "bool __cdecl PutRawMeterData(enum AkMonitorData::BusMeterDataType,struct AkChannelConfig,float const *,class MonitorSerializer &)" (?PutRawMeterData@@YA_NW4BusMeterDataType@AkMonitorData@@UAkChannelConfig@@PEBMAEAVMonitorSerializer@@@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::Put(bool)" (?Put@Serializer@@QEAA_N_N@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
1>AkSoundEngine.lib(AkLEngine_SoftwarePipeline.obj) : error LNK2019: unresolved external symbol "public: bool __cdecl Serializer::PutPacked(float)" (?PutPacked@Serializer@@QEAA_NM@Z) referenced in function "public: static void __cdecl CAkLEngine::GetPipelineData(class MonitorSerializer &,bool)" (?GetPipelineData@CAkLEngine@@SAXAEAVMonitorSerializer@@_N@Z)
The code is simple, I'm pretty much copying and pasting what is in the WwiseSDK-Windows.chm
#include "w_memoryHook.h"
#include <AK/SoundEngine/Common/AkTypes.h>
#ifndef AK_OPTIMIZED
#include <AK/Comm/AkCommunication.h> // Communication between Wwise and the game (excluded in release build)
#endif
#include <AK/SoundEngine/Common/AkMemoryMgr.h> //Memory manager
#include <AK/SoundEngine/Common/AkModule.h> //Default memory and stream managers
#include <AK/SoundEngine/Common/AkSoundEngine.h> //Sound
#include <AK/MusicEngine/Common/AkMusicEngine.h> // Music Engine
#include <iostream>
bool InitSoundEngine()
{
AkMemSettings w_memorySettings;
w_memorySettings.uMaxNumPools = 20;
if (AK::MemoryMgr::Init(&w_memorySettings) != AK_Success)
{
std::cout << "Could not create wWise memory manager." << std::endl;
return false;
}
return true;
}
int main(void)
{
return 0;
}
If anyone could help I would appreciate it very much.