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
------
2>Compiling...
1>Compiling...
2>LaserBolt.cpp
1>LaserBolt.cpp
2>Linking...
1>Linking...
2>weapon_blaster.obj : error LNK2005: "private: virtual int __thiscall
C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void)"
(?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already
defined in c_weapon_blaster.obj
2>weapon_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
2>weapon_blaster.obj : error LNK2005: "int __cdecl ClientClassInit<struct
DT_LaserBolt::ignored>(struct DT_LaserBolt::ignored *)"
(??$clientclassi...@uignored@DT_LaserBolt@@@@yahpauigno...@dt_laserbolt@@@Z)
already defined in c_weapon_blaster.obj
2>weapon_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
2>weapon_blaster.obj : error LNK2005: "class ClientClass
__g_C_LaserBoltClientClass" (?__g_C_LaserBoltClientClass@@3VClientClass@@A)
already defined in c_weapon_blaster.obj
2>weapon_blaster.obj : error LNK2005: "int DT_LaserBolt::g_RecvTableInit"
(?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj
2>weapon_blaster.obj : error LNK2005: "class RecvTable
DT_LaserBolt::g_RecvTable" (?g_recvta...@dt_laserbolt@@3VRecvTable@@A)
already defined in c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "private: virtual int __thiscall
C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void)"
(?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already
defined in c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "private: virtual class ClientClass *
__thiscall C_LaserBolt::GetClientClass(void)"
(?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in
c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "int __cdecl ClientClassInit<struct
DT_LaserBolt::ignored>(struct DT_LaserBolt::ignored *)"
(??$clientclassi...@uignored@DT_LaserBolt@@@@yahpauigno...@dt_laserbolt@@@Z)
already defined in c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "private: static class RecvTable *
C_LaserBolt::m_pClassRecvTable"
(?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in
c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "class ClientClass
__g_C_LaserBoltClientClass" (?__g_C_LaserBoltClientClass@@3VClientClass@@A)
already defined in c_weapon_blaster.obj
2>LaserBolt.obj : error LNK2005: "int DT_LaserBolt::g_RecvTableInit"
(?g_recvtablei...@dt_laserbolt@@3HA) already defined in c_weapon_blaster.obj
2>LaserBolt.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
2>Build log was saved at "file://c:\Source SDK Mods\OB
Sandbox\src\game\client\Release_sdk\BuildLog.htm"
2>Client SDK - 15 error(s), 0 warning(s)
1>LaserBolt.obj : error LNK2005: "protected: virtual struct datamap_t *
__thiscall CLaserBolt::GetDataDescMap(void)"
(?getdatadesc...@claserbolt@@MAEPAUdatamap_t@@XZ) already defined in
weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "public: virtual class ServerClass *
__thiscall CLaserBolt::GetServerClass(void)"
(?getservercl...@claserbolt@@UAEPAVServerClass@@XZ) already defined in
weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "public: virtual int __thiscall
CLaserBolt::YouForgotToImplementOrDeclareServerClass(void)"
(?youforgottoimplementordeclareservercl...@claserbolt@@UAEHXZ) already
defined in weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "protected: static struct datamap_t *
__cdecl CLaserBolt::GetBaseMap(void)"
(?getbase...@claserbolt@@KAPAUdatamap_t@@XZ) already defined in
weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "int __cdecl ServerClassInit<struct
DT_LaserBolt::ignored>(struct DT_LaserBolt::ignored *)"
(??$serverclassi...@uignored@DT_LaserBolt@@@@yahpauigno...@dt_laserbolt@@@Z)
already defined in weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "struct datamap_t * __cdecl
DataMapInit<class CLaserBolt>(class CLaserBolt *)"
(??$datamapi...@vclaserbolt@@@@YAPAUdatamap_t@@PAVCLaserBolt@@@Z) already
defined in weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "protected: static struct datamap_t
CLaserBolt::m_DataMap" (?m_data...@claserbolt@@1Udatamap_t@@A) already
defined in weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "public: static class SendTable *
CLaserBolt::m_pClassSendTable"
(?m_pclasssendta...@claserbolt@@2PAVSendTable@@A) already defined in
weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "int DT_LaserBolt::g_SendTableInit"
(?g_sendtablei...@dt_laserbolt@@3HA) already defined in weapon_blaster.obj
1>LaserBolt.obj : error LNK2005: "class SendTable DT_LaserBolt::g_SendTable"
(?g_sendta...@dt_laserbolt@@3VSendTable@@A) already defined in
weapon_blaster.obj
1>LaserBolt.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
1>Build log was saved at "file://c:\Source SDK Mods\OB
Sandbox\src\game\server\Release_sdk\BuildLog.htm"
1>Server 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
> ------
>
> 1>Linking...
>
> 2>Linking...
>
> 2>weapon_blaster.obj : error LNK2005: "private: virtual int __thiscall
> C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void)"
> (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already
> defined in c_weapon_blaster.obj
>
> 2>weapon_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
>
> 2>weapon_blaster.obj : error LNK2005: "int __cdecl ClientClassInit<struct
> DT_LaserBolt::ignored>(struct DT_LaserBolt::ignored *)"
>
(??$clientclassi...@uignored@DT_LaserBolt@@@@yahpauigno...@dt_laserbolt@@@Z)
> already defined in c_weapon_blaster.obj
>
> 2>weapon_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
>
> 2>weapon_blaster.obj : error LNK2005: "class ClientClass
> __g_C_LaserBoltClientClass" 
> (?__g_C_LaserBoltClientClass@@3VClientClass@@A)
> already defined in c_weapon_blaster.obj
>
> 2>weapon_blaster.obj : error LNK2005: "int DT_LaserBolt::g_RecvTableInit"
> (?g_recvtablei...@dt_laserbolt@@3HA) already defined in 
> c_weapon_blaster.obj
>
> 2>weapon_blaster.obj : error LNK2005: "class RecvTable
> DT_LaserBolt::g_RecvTable" (?g_recvta...@dt_laserbolt@@3VRecvTable@@A)
> already defined in c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "private: virtual int __thiscall
> C_LaserBolt::YouForgotToImplementOrDeclareClientClass(void)"
> (?youforgottoimplementordeclareclientcl...@c_laserbolt@@EAEHXZ) already
> defined in c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "private: virtual class ClientClass *
> __thiscall C_LaserBolt::GetClientClass(void)"
> (?getclientcl...@c_laserbolt@@EAEPAVClientClass@@XZ) already defined in
> c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "int __cdecl ClientClassInit<struct
> DT_LaserBolt::ignored>(struct DT_LaserBolt::ignored *)"
>
(??$clientclassi...@uignored@DT_LaserBolt@@@@yahpauigno...@dt_laserbolt@@@Z)
> already defined in c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "private: static class RecvTable *
> C_LaserBolt::m_pClassRecvTable"
> (?m_pclassrecvta...@c_laserbolt@@0PAVRecvTable@@A) already defined in
> c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "class ClientClass
> __g_C_LaserBoltClientClass" 
> (?__g_C_LaserBoltClientClass@@3VClientClass@@A)
> already defined in c_weapon_blaster.obj
>
> 2>LaserBolt.obj : error LNK2005: "int DT_LaserBolt::g_RecvTableInit"
> (?g_recvtablei...@dt_laserbolt@@3HA) already defined in 
> c_weapon_blaster.obj
>
> 2>LaserBolt.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
>
> 2>Build log was saved at "file://c:\Source SDK Mods\OB
> Sandbox\src\game\client\Release_sdk\BuildLog.htm"
>
> 2>Client SDK - 15 error(s), 0 warning(s)
>
> 1>   Creating library .\Release_sdk/Server.lib and object
> .\Release_sdk/Server.exp
>
> 1>weapon_blaster.obj : error LNK2001: unresolved external symbol "public:
> virtual void __thiscall CLaserBolt::Spawn(void)" 
> (?sp...@claserbolt@@UAEXXZ)
>
> 1>weapon_blaster.obj : error LNK2001: unresolved external symbol "public:
> virtual void __thiscall CLaserBolt::Precache(void)"
> (?preca...@claserbolt@@UAEXXZ)
>
> 1>weapon_blaster.obj : error LNK2001: unresolved external symbol "public:
> virtual bool __thiscall CLaserBolt::CreateVPhysics(void)"
> (?createvphys...@claserbolt@@UAE_NXZ)
>
> 1>weapon_blaster.obj : error LNK2001: unresolved external symbol "public:
> virtual unsigned int __thiscall
> CLaserBolt::PhysicsSolidMaskForEntity(void)const "
> (?physicssolidmaskforent...@claserbolt@@UBEIXZ)
>
> 1>weapon_blaster.obj : error LNK2019: unresolved external symbol "public:
> virtual __thiscall CLaserBolt::~CLaserBolt(void)" (??1CLaserBolt@@u...@xz)
> referenced in function "public: virtual void * __thiscall
> CLaserBolt::`scalar deleting destructor'(unsigned int)"
> (??_GCLaserBolt@@uaep...@z)
>
> 1>weapon_blaster.obj : error LNK2019: unresolved external symbol "public:
> void __thiscall CLaserBolt::BoltTouch(class CBaseEntity *)"
> (?boltto...@claserbolt@@QAEXPAVCBaseEntity@@@Z) referenced in function
> "struct datamap_t * __cdecl DataMapInit<class CLaserBolt>(class CLaserBolt
> *)" (??$datamapi...@vclaserbolt@@@@YAPAUdatamap_t@@PAVCLaserBolt@@@Z)
>
> 1>weapon_blaster.obj : error LNK2019: unresolved external symbol "public:
> void __thiscall CLaserBolt::BubbleThink(void)"
> (?bubbleth...@claserbolt@@QAEXXZ) referenced in function "struct datamap_t

> *
> __cdecl DataMapInit<class CLaserBolt>(class CLaserBolt *)"
> (??$datamapi...@vclaserbolt@@@@YAPAUdatamap_t@@PAVCLaserBolt@@@Z)
>
> 1>weapon_blaster.obj : error LNK2019: unresolved external symbol "public:
> static class CLaserBolt * __cdecl CLaserBolt::BoltCreate(class Vector 
> const
> &,class QAngle const &,int,class CBasePlayer *)"
> (?boltcre...@claserbolt@@sap...@abvvector@@ABVQAngle@@HPAVCBasePlayer@@@Z)
> referenced in function "private: void __thiscall
> CWeaponBlaster::FireBolt(void)" (?fireb...@cweaponblaster@@AAEXXZ)
>
> 1>.\Release_sdk/Server.dll : fatal error LNK1120: 8 unresolved externals
>
> 1>Build log was saved at "file://c:\Source SDK Mods\OB
> Sandbox\src\game\server\Release_sdk\BuildLog.htm"
>
> 1>Server SDK - 9 error(s), 0 warning(s)
>
> ========== Build: 0 succeeded, 2 failed, 2 up-to-date, 0 skipped 
> ==========
>
>
>
> What am I doing wrong? Code at
> http://forums.steampowered.com/forums/showthread.php?t=860217
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives, 
> please visit:
> http://list.valvesoftware.com/mailman/listinfo/hlcoders
> 


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives,
please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders
 

__________ Information from ESET Smart Security, version of virus signature
database 4077 (20090514) __________

The message was checked by ESET Smart Security.

http://www.eset.com
 
 

__________ Information from ESET Smart Security, version of virus signature
database 4077 (20090514) __________

The message was checked by ESET Smart Security.

http://www.eset.com
 


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to