Re: [hlcoders] Compiling Problems
The code is at http://forums.steampowered.com/forums/showthread.php?t=860217 On Fri, May 15, 2009 at 11:57 PM, Jonas 'Sortie' Termansen hlcod...@maxsi.dk wrote: Are you sure you are not declaring it from inside some macro? Because the linker suggest it's defined somewhere, if you can, upload the source code somewhere and link it here. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 5:57 AM Subject: Re: [hlcoders] Compiling Problems I don't see where. There is no reference to CLaserBolt in weapon_blaster apart from creating it, and the include. -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 11:54 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Again, you are defining the same stuff in the LaserBolt.cpp and weapon_blaster on the Server. You might be defining the same class twice. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 3:30 AM Subject: Re: [hlcoders] Compiling Problems New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt @@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) 2Copying to c:\games\steam\steamapps\SourceMods\obsandbox\bin\ 21 file(s) copied. 21 file(s) copied. 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 0 error(s), 0 warning(s) -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:57 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Fixing the very first error often solves the following in the output. Try
Re: [hlcoders] Compiling Problems
Move BEGIN_DATADESC( CLaserBolt ) // Function Pointers DEFINE_FUNCTION( BubbleThink ), DEFINE_FUNCTION( BoltTouch ), // These are recreated on reload, they don't need storage DEFINE_FIELD( m_pGlowSprite, FIELD_EHANDLE ), //DEFINE_FIELD( m_pGlowTrail, FIELD_EHANDLE ), END_DATADESC() IMPLEMENT_SERVERCLASS_ST( CLaserBolt, DT_LaserBolt ) END_SEND_TABLE() from LaserBolt.h to LaserBolt.cpp - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: Discussion of Half-Life Programming hlcoders@list.valvesoftware.com Sent: Saturday, May 16, 2009 12:43 PM Subject: Re: [hlcoders] Compiling Problems The code is at http://forums.steampowered.com/forums/showthread.php?t=860217 On Fri, May 15, 2009 at 11:57 PM, Jonas 'Sortie' Termansen hlcod...@maxsi.dk wrote: Are you sure you are not declaring it from inside some macro? Because the linker suggest it's defined somewhere, if you can, upload the source code somewhere and link it here. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 5:57 AM Subject: Re: [hlcoders] Compiling Problems I don't see where. There is no reference to CLaserBolt in weapon_blaster apart from creating it, and the include. -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 11:54 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Again, you are defining the same stuff in the LaserBolt.cpp and weapon_blaster on the Server. You might be defining the same class twice. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 3:30 AM Subject: Re: [hlcoders] Compiling Problems New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt @@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12
Re: [hlcoders] Compiling Problems
Are you sure you are not declaring it from inside some macro? Because the linker suggest it's defined somewhere, if you can, upload the source code somewhere and link it here. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 5:57 AM Subject: Re: [hlcoders] Compiling Problems I don't see where. There is no reference to CLaserBolt in weapon_blaster apart from creating it, and the include. -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 11:54 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Again, you are defining the same stuff in the LaserBolt.cpp and weapon_blaster on the Server. You might be defining the same class twice. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 3:30 AM Subject: Re: [hlcoders] Compiling Problems New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) 2Copying to c:\games\steam\steamapps\SourceMods\obsandbox\bin\ 21 file(s) copied. 21 file(s) copied. 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 0 error(s), 0 warning(s) -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:57 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Fixing the very first error often solves the following in the output. Try and learn to read it carefully. 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj It's pretty
Re: [hlcoders] Compiling Problems
Looks like you forgot to declare or implement the server class in your .h file class definition, and that you forgot to give some functions a body - if you declare them and call them, you must give them a body. It's a little late for me to look up code, but pay some attention to the class definitions of a few entities, and you'll see what I mean. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 2:33 AM Subject: [hlcoders] Compiling Problems I'm trying to create a starwars-style laser gun. I cloned the crossbow and crossbow bolt, but then I tried moving the cloned crossbow bolt to it's own .h/.cpp so I can use it for multiple weapons, and got: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 1Linking... 2Linking... 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 2.\Release_sdk/Client.dll : fatal error LNK1169: one or more multiply defined symbols found 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 15 error(s), 0 warning(s) 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1weapon_blaster.obj : error LNK2001: unresolved external symbol public: virtual void __thiscall CLaserBolt::Spawn(void) (?sp...@claserbolt@@UAEXXZ) 1weapon_blaster.obj : error LNK2001: unresolved external symbol public: virtual void __thiscall CLaserBolt::Precache(void) (?preca...@claserbolt@@UAEXXZ) 1weapon_blaster.obj : error LNK2001: unresolved external symbol public: virtual bool __thiscall CLaserBolt::CreateVPhysics(void) (?createvphys...@claserbolt@@UAE_NXZ) 1weapon_blaster.obj : error LNK2001: unresolved external symbol public: virtual unsigned int __thiscall CLaserBolt::PhysicsSolidMaskForEntity(void)const (?physicssolidmaskforent...@claserbolt@@UBEIXZ) 1weapon_blaster.obj : error LNK2019: unresolved external symbol public: virtual __thiscall CLaserBolt::~CLaserBolt(void) (??1CLaserBolt@@u...@xz)
Re: [hlcoders] Compiling Problems
::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) == Build: 0 succeeded, 2 failed, 2 up-to-date, 0 skipped == -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:42 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Looks like you forgot to declare or implement the server class in your .h file class definition, and that you forgot to give some functions a body - if you declare them and call them, you must give them a body. It's a little late for me to look up code, but pay some attention to the class definitions of a few entities, and you'll see what I mean. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 2:33 AM Subject: [hlcoders] Compiling Problems I'm trying to create a starwars-style laser gun. I cloned the crossbow and crossbow bolt, but then I tried moving the cloned crossbow bolt to it's own .h/.cpp so I can use it for multiple weapons, and got: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 1Linking... 2Linking... 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 2.\Release_sdk/Client.dll : fatal error LNK1169: one or more
Re: [hlcoders] Compiling Problems
Fixing the very first error often solves the following in the output. Try and learn to read it carefully. 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj It's pretty simple, you declared the client class twice. (Perhaps in the sever.dll one?). Be sure not to declare it twice. The output states C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) is defined in both weapon_blaster.cpp and c_weapon_blaster.cpp. One of them is wrong, find out which one, and remove it. (I suggest removing it from the server one, it doesn't need a ClientClass anyways). (Or did you name the class the same on the client as the server, it could screw things up, but I don't know for certain, never did networking in games). - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 2:46 AM Subject: Re: [hlcoders] Compiling Problems I added it to the server project (silly me, I only had it in client), and now I get: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2Linking... 1Linking... 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2weapon_blaster.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: virtual class ClientClass * __thiscall C_LaserBolt::GetClientClass(void) (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int __cdecl ClientClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$clientclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: private: static class RecvTable * C_LaserBolt::m_pClassRecvTable (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class ClientClass __g_C_LaserBoltClientClass (?__g_C_LaserBoltClientClass@@3VClientClass@@A) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_RecvTableInit (?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj 2LaserBolt.obj : error LNK2005: class RecvTable DT_LaserBolt::g_RecvTable (?g_recvta...@dt_laserbolt@@3VRecvTable@@A) already defined in c_weapon_blaster.obj 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 2.\Release_sdk/Client.dll : fatal error LNK1169: one or more multiply defined symbols found 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 15 error(s), 0 warning(s) 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public
Re: [hlcoders] Compiling Problems
New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) 2Copying to c:\games\steam\steamapps\SourceMods\obsandbox\bin\ 21 file(s) copied. 21 file(s) copied. 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 0 error(s), 0 warning(s) -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:57 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Fixing the very first error often solves the following in the output. Try and learn to read it carefully. 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj It's pretty simple, you declared the client class twice. (Perhaps in the sever.dll one?). Be sure not to declare it twice. The output states C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) is defined in both weapon_blaster.cpp and c_weapon_blaster.cpp. One of them is wrong, find out which one, and remove it. (I suggest removing it from the server one, it doesn't need a ClientClass anyways). (Or did you name the class the same on the client as the server, it could screw things up, but I don't know for certain, never did networking in games). - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 2:46 AM Subject: Re: [hlcoders] Compiling Problems I added it to the server project (silly me, I only had it in client), and now I get: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2Linking... 1Linking... 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void
Re: [hlcoders] Compiling Problems
Again, you are defining the same stuff in the LaserBolt.cpp and weapon_blaster on the Server. You might be defining the same class twice. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 3:30 AM Subject: Re: [hlcoders] Compiling Problems New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) 2Copying to c:\games\steam\steamapps\SourceMods\obsandbox\bin\ 21 file(s) copied. 21 file(s) copied. 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 0 error(s), 0 warning(s) -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:57 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Fixing the very first error often solves the following in the output. Try and learn to read it carefully. 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj It's pretty simple, you declared the client class twice. (Perhaps in the sever.dll one?). Be sure not to declare it twice. The output states C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) is defined in both weapon_blaster.cpp and c_weapon_blaster.cpp. One of them is wrong, find out which one, and remove it. (I suggest removing it from the server one, it doesn't need a ClientClass anyways). (Or did you name the class the same on the client as the server, it could screw things up, but I don't know for certain, never did networking in games). - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 2:46 AM Subject: Re: [hlcoders] Compiling Problems I added it to the server
Re: [hlcoders] Compiling Problems
I don't see where. There is no reference to CLaserBolt in weapon_blaster apart from creating it, and the include. -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 11:54 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Again, you are defining the same stuff in the LaserBolt.cpp and weapon_blaster on the Server. You might be defining the same class twice. - Original Message - From: Yaakov Smith m4ngr...@gmail.com To: 'Discussion of Half-Life Programming' hlcoders@list.valvesoftware.com Sent: Friday, May 15, 2009 3:30 AM Subject: Re: [hlcoders] Compiling Problems New problems now: 1-- Build started: Project: Server SDK, Configuration: Release Win32 -- 2-- Build started: Project: Client SDK, Configuration: Release Win32 -- 2Compiling... 1Compiling... 2LaserBolt.cpp 1LaserBolt.cpp 2weapon_blaster.cpp 2Generating Code... 1weapon_blaster.cpp 2Linking... 1Generating Code... 1Linking... 2 Creating library .\Release_sdk/Client.lib and object .\Release_sdk/Client.exp 1LaserBolt.obj : error LNK2005: protected: virtual struct datamap_t * __thiscall CLaserBolt::GetDataDescMap(void) (?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual class ServerClass * __thiscall CLaserBolt::GetServerClass(void) (?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: virtual int __thiscall CLaserBolt::YouForgotToImplementOrDeclareServerClass(void) (?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t * __cdecl CLaserBolt::GetBaseMap(void) (?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int __cdecl ServerClassInitstruct DT_LaserBolt::ignored(struct DT_LaserBolt::ignored *) (??$serverclassi...@uignored@DT_LaserBoltyahpauigno...@dt_laserbolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * __cdecl DataMapInitclass CLaserBolt(class CLaserBolt *) (??$datamapi...@vclaserboltYAPAUdatamap_t@@PAVCLaserBolt@@@Z) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: protected: static struct datamap_t CLaserBolt::m_DataMap (?m_data...@claserbolt@@1Udatamap_t@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: public: static class SendTable * CLaserBolt::m_pClassSendTable (?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: int DT_LaserBolt::g_SendTableInit (?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: class SendTable DT_LaserBolt::g_SendTable (?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in weapon_blaster.obj 1LaserBolt.obj : error LNK2005: struct datamap_t * CLaserBolt_DataDescInit::g_DataMapHolder (?g_datamaphol...@claserbolt_datadescinit@@3PAUdatamap_t@@A) already defined in weapon_blaster.obj 1 Creating library .\Release_sdk/Server.lib and object .\Release_sdk/Server.exp 1.\Release_sdk/Server.dll : fatal error LNK1169: one or more multiply defined symbols found 1Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\server\Release_sdk\BuildLog.htm 1Server SDK - 12 error(s), 0 warning(s) 2Copying to c:\games\steam\steamapps\SourceMods\obsandbox\bin\ 21 file(s) copied. 21 file(s) copied. 2Build log was saved at file://c:\Source SDK Mods\OB Sandbox\src\game\client\Release_sdk\BuildLog.htm 2Client SDK - 0 error(s), 0 warning(s) -Original Message- From: hlcoders-boun...@list.valvesoftware.com [mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Jonas 'Sortie' Termansen Sent: Friday, 15 May 2009 10:57 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Compiling Problems Fixing the very first error often solves the following in the output. Try and learn to read it carefully. 2weapon_blaster.obj : error LNK2005: private: virtual int __thiscall C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already defined in c_weapon_blaster.obj It's pretty simple, you declared the client class twice. (Perhaps in the sever.dll one?). Be sure not to declare it twice. The output states C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void) is defined in both weapon_blaster.cpp and c_weapon_blaster.cpp. One of them is wrong, find out which one, and remove it. (I suggest removing it from the server one, it doesn't need a ClientClass anyways). (Or did you name