Re: [hlcoders] Compiling Problems

2009-05-16 Thread Yaakov Smith
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

2009-05-16 Thread Jonas 'Sortie' Termansen
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

2009-05-15 Thread Jonas 'Sortie' Termansen
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

2009-05-14 Thread Jonas 'Sortie' Termansen
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

2009-05-14 Thread Yaakov Smith
::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

2009-05-14 Thread Jonas 'Sortie' Termansen
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

2009-05-14 Thread Yaakov Smith
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

2009-05-14 Thread Jonas 'Sortie' Termansen
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

2009-05-14 Thread Yaakov Smith
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