无法使用RakNet ...链接错误

时间:2015-10-29 21:37:33

标签: c++ visual-studio visual-studio-2013 linker raknet

(注意:我使用的是Visual Studio 2013)

我试图在我的项目中使用RakNet,但我遇到了很多问题。

如果我尝试在没有lib文件的情况下编译:

Error   2   error LNK2019: unresolved external symbol
"public: __thiscall RakNet::SystemAddress::SystemAddress(void)"
(??0SystemAddress@RakNet@@QAE@XZ) referenced in function
"void __cdecl RakNet::`dynamic initializer for 'UNASSIGNED_SYSTEM_ADDRESS''(void)"
(??__EUNASSIGNED_SYSTEM_ADDRESS@RakNet@@YAXXZ)  E:\Fazbear Entertainment\FEplusplus\server\server.obj   _server

如果我尝试用我在VS2013中编译的RakNet静态lib文件进行编译:

Error   5   error LNK2019: unresolved external symbol "public: static void __cdecl
RakNet::RakNetSocket2::DomainNameToIP(char const *,char * const)"
(?DomainNameToIP@RakNetSocket2@RakNet@@SAXPBDQAD@Z) referenced in function
"public: bool __thiscall RakNet::SystemAddress::SetBinaryAddress(char const *,char)"
(?SetBinaryAddress@SystemAddress@RakNet@@QAE_NPBDD@Z)   E:\Fazbear Entertainment\FEplusplus\server\RakNetLibStatic.lib(RakNetTypes.obj) _server

Error   2   error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in server.obj   E:\Fazbear Entertainment\FEplusplus\server\RakNetLibStatic.lib(RakNetTypes.obj) _server


Error   3   error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MDd_DynamicDebug' in server.obj    E:\Fazbear Entertainment\FEplusplus\server\RakNetLibStatic.lib(RakNetTypes.obj) _server

如果我#include "RakPeerInterface.h",我只会收到这些错误。

如果我能在某个地方找到预编译的lib,它可能会有所帮助吗?

1 个答案:

答案 0 :(得分:0)

我不得不将RakNet源文件添加到项目中。我之前在谷歌搜索时听到了这个,但没有完全理解它的意思......但它现在有效。 (在VC ++项目中创建一个文件夹/过滤器,并在源文件夹中添加raknet文件,以便他们使用您的程序进行编译)