- configxml.h
- configxml.cpp
- config_xml.h and
- config_xml.cpp
Anyhow, config_xml.h #includes config.h, which I can't find anywhere...
Code: Select all
bool LinkStage3Goto(std::string input, unsigned int unusedindexdat, void *dat1, void *dat2, const void *dat3, float x, float y) {
return (sscanf(input.c_str(), "%d", dat1)>=1);
}
Code: Select all
objconv/basemaker/base_maker.cpp:1364: warning: format ‘%d’ expects type ‘int*’, but argument 3 has type ‘void*’
Code: Select all
bool LinkStage3Goto(std::string input, unsigned int unusedindexdat, void *dat1, void *dat2, const void *dat3, float x, float y) {
return ( sscanf( input.c_str(), "%d", reinterpret_cast<int*>(dat1) )>=1 );
}
Code: Select all
/*
***************************************************************************
**** Since we now use templates, we have to include GameUnit related ***
**** .cpp files in unit.h to avoid problems with some compilers ***
***************************************************************************
*/
#include "unit.cpp"
Code: Select all
src/star_system.o: In function `GameStarSystem::Draw(bool)':
star_system.cpp:(.text+0x19e8): undefined reference to `GameUnit<Unit>::Draw(Transformation const&, Matrix const&)'
src/cmd/asteroid.o: In function `GameAsteroid::GameAsteroid(char const*, int, Flightgroup*, int, float)':
asteroid.cpp:(.text+0x45d): undefined reference to `GameUnit<Asteroid>::GameUnit(char const*, bool, int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Flightgroup*, int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
asteroid.cpp:(.text+0x4f7): undefined reference to `GameUnit<Asteroid>::~GameUnit()'
src/cmd/asteroid.o: In function `GameAsteroid::GameAsteroid(char const*, int, Flightgroup*, int, float)':
asteroid.cpp:(.text+0x56d): undefined reference to `GameUnit<Asteroid>::GameUnit(char const*, bool, int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, Flightgroup*, int, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*)'
asteroid.cpp:(.text+0x607): undefined reference to `GameUnit<Asteroid>::~GameUnit()'
src/cmd/asteroid.o: In function `GameAsteroid::UpdatePhysics2(Transformation const&, Transformation const&, Vector const&, float, Matrix const&, Vector const&, bool, UnitCollection*)':
asteroid.cpp:(.text+0xa): undefined reference to `GameUnit<Asteroid>::UpdatePhysics2(Transformation const&, Transformation const&, Vector const&, float, Matr
.............................................................................
Code: Select all
template < class UnitType >
class GameUnit : public UnitType
{
friend class UnitFactory;
protected:
........................................
Code: Select all
template class GameUnit< Asteroid >;
template class GameUnit< Building >;
template class GameUnit< Nebula >;
template class GameUnit< Planet >;
template class GameUnit< Unit >;
template class GameUnit< Missile >;
template class GameUnit< Mesh >;
template class GameUnit< Flightgroup >;
template class GameUnit< Terrain >;
template class GameUnit< ContinuousTerrain >;
template class GameUnit< Enhancement >;
Code: Select all
template< class Derived >
class CRTP
{
....
};
class CRTP_derived : private CRTP< CRTP_derived >
{
....
};
Code: Select all
class GamePlanet : public GameUnit< class Planet >
{
private:
Animation *shine;
protected:
..................
Code: Select all
/////////////////////////////////////////////////////
//explicit instantiations, added by chuck_starchaser:
#include "cmd/asteroid_generic.h"
template class GameUnit< Asteroid >;
#include "cmd/building_generic.h"
template class GameUnit< Building >;
#include "cmd/planet_generic.h"
template class GameUnit< Planet >;
#include "cmd/unit_generic.h"
template class GameUnit< Unit >;
#include "cmd/missile_generic.h"
template class GameUnit< Missile >;
#include "cmd/nebula.h"
template class GameUnit< Nebula >;
#include "cmd/enhancement.h"
template class GameUnit< Enhancement >;
// The unit types below don't compile; --probably they don't inherit from Unit.
// #include "gfx/mesh.h"
// template class GameUnit< Mesh >;
// #include "cmd/script/flightgroup.h"
// template class GameUnit< Flightgroup >;
// #include "cmd/terrain.h"
// template class GameUnit< Terrain >;
// #include "cmd/cont_terrain.h"
// template class GameUnit< ContinuousTerrain >;
/////////////////////////////////////////////////////
Code: Select all
src/cmd/unit.o: In function `perspectiveFactor(float)':
unit.cpp:(.text+0x1c): undefined reference to `GFXGetZPerspective(float)'
src/cmd/unit.o: In function `T.10206':
unit.cpp:(.text+0x82d): undefined reference to `Camera::GetPQR(Vector&, Vector&, Vector&)'
src/cmd/unit.o: In function `GameUnit<Unit>::GameUnit(std::vector<Mesh*, std::allocator<Mesh*> >&, bool, int)':
unit.cpp:(.text._ZN8GameUnitI4UnitEC1ERSt6vectorIP4MeshSaIS4_EEbi[GameUnit<Unit>::GameUnit(std::vector<Mesh*, std::allocator<Mesh*> >&, bool, int)]+0x1f): undefined reference to `HaloSystem::HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Unit>::GameUnit(std::vector<Mesh*, std::allocator<Mesh*> >&, bool, int)':
unit.cpp:(.text._ZN8GameUnitI4UnitEC2ERSt6vectorIP4MeshSaIS4_EEbi[GameUnit<Unit>::GameUnit(std::vector<Mesh*, std::allocator<Mesh*> >&, bool, int)]+0x1f): undefined reference to `HaloSystem::HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Nebula>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI6NebulaEC1Ei[GameUnit<Nebula>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI6NebulaEC1Ei[GameUnit<Nebula>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Nebula>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI6NebulaEC2Ei[GameUnit<Nebula>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI6NebulaEC2Ei[GameUnit<Nebula>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Missile>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI7MissileEC1Ei[GameUnit<Missile>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI7MissileEC1Ei[GameUnit<Missile>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Missile>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI7MissileEC2Ei[GameUnit<Missile>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI7MissileEC2Ei[GameUnit<Missile>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Unit>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI4UnitEC1Ei[GameUnit<Unit>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI4UnitEC1Ei[GameUnit<Unit>::GameUnit(int)]+0x71): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Unit>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI4UnitEC2Ei[GameUnit<Unit>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI4UnitEC2Ei[GameUnit<Unit>::GameUnit(int)]+0x71): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Building>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI8BuildingEC1Ei[GameUnit<Building>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI8BuildingEC1Ei[GameUnit<Building>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Building>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI8BuildingEC2Ei[GameUnit<Building>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI8BuildingEC2Ei[GameUnit<Building>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Asteroid>::GameUnit(int)':
unit.cpp:(.text._ZN8GameUnitI8AsteroidEC1Ei[GameUnit<Asteroid>::GameUnit(int)]+0x2d): undefined reference to `HaloSystem::HaloSystem()'
unit.cpp:(.text._ZN8GameUnitI8AsteroidEC1Ei[GameUnit<Asteroid>::GameUnit(int)]+0x78): undefined reference to `HaloSystem::~HaloSystem()'
src/cmd/unit.o: In function `GameUnit<Asteroid>::GameUnit(int)':
...................................................................................................
Code: Select all
//file unit.cpp:
#include "unit.h" <------------------ I put this there; originally it didn't
as this file, unit.cpp, was included at the bottom of unit.h
#include "vsfilesystem.h"
#include "vs_globals.h"
#include "file_main.h"
#include "gfx/halo.h"
#include "unit_factory.h"
#include "gfx/sprite.h"
#include "lin_time.h"
#include "gfx/vsbox.h"
#include "bolt.h"
#include "gfx/lerp.h"
#include "gfx/bsp.h"
#include "audiolib.h"
#include "gfx/cockpit.h"
#include "config_xml.h"
#include "images.h"
//#include "gfx/planetary_transform.h"
///for saving features
#include "main_loop.h"
#include "script/mission.h"
#include "script/flightgroup.h"
#include "savegame.h"
#include "xml_serializer.h"
#include "python/python_class.h"
#include "cmd/ai/missionscript.h"
#include "gfx/particle.h"
#include "cmd/ai/aggressive.h"
#include "cmd/base.h"
//#include "unit_template.h"
//#include "gfx/animation.h"
#include "gfx/point_to_cam.h"
#include "unit_jump.cpp" <------------------ cpp!
#include "unit_customize.cpp" <------------------ cpp!
#include "unit_damage.cpp" <------------------ cpp!
#include "unit_physics.cpp" <------------------ cpp!
#include "unit_bsp.h"
#include "unit_click.cpp" <------------------ cpp!
#include "base_util.h"
//if the PQR of the unit may be variable...for radius size computation
//#define VARIABLE_LENGTH_PQR
//#define DESTRUCTDEBUG
#include "beam.h"
#include "python/init.h"
#include "unit_const_cache.h"
.................
template < class UnitType >
void GameUnit< UnitType >::UpgradeInterface( Unit *baseun )
{
Hmm... Yeah, I guess I shouldn't have done this in this branch; I had no idea it was going to take so much work to make it work; thought it was going to be 5-minute fix.klauss wrote:You're probably having a problem with vegaserver since all that template stuff is there for vegaserver, which changes the template instantiation in a way that cuts off a lot of cruft from unit classes.
I think fixing this would require major refactoring.
Now you'll understand why I mentioned task-oriented branches instead of author-oriented branches. If you've been doing all this on the reformat branch you'll notice you can't separate the changes - can you make me a diff (patch) showing what you changed to get rid of #include "unit.cpp" (or the like)? Probably not. You'll have to work on it on its own branch so that I might help.
Well, what I could do is commit now (but I'll wait for you to give me the okay)... What I'm thinking is, if I just commit (to the reformat branch), you can check out my branch and see the diff since the previous commit. Except for one tiny change to one file, I think, everything I've done since the last commit is about getting rid of #include "unit.cpp", so you'd simply diff against the previous commit to know what I've done. And, thanks in advance.Note: might. I have a lot of stuff on my hands as it is. But this kind of refactoring is a good thing, and if you managed to build vegastrike client that's a huge thing, I might try to get vegaserver building again.
I've never had those warnings... AFAIK, it's perfectly legitimate to throw away return values - and rather common as well.chuck_starchaser wrote:but I'm less than proud about a few hacks, namely, to get rid of warnings about ignored return values from functions such as sscanf, fscanf, chdir, etceteras...
Code: Select all
src/faction_util.o: In function `FactionUtil::GetNumAnimation(int)':
faction_util.cpp:(.text+0x0): multiple definition of `FactionUtil::GetNumAnimation(int)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x80): first defined here
src/faction_util.o: In function `FactionUtil::GetAnimation(int, int, unsigned char&)':
faction_util.cpp:(.text+0x20): multiple definition of `FactionUtil::GetAnimation(int, int, unsigned char&)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x10): first defined here
src/faction_util.o: In function `FactionUtil::createTexture(char const*, char const*, bool)':
faction_util.cpp:(.text+0x60): multiple definition of `FactionUtil::createTexture(char const*, char const*, bool)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x30): first defined here
src/faction_util.o: In function `FactionUtil::createTexture(char const*, bool)':
faction_util.cpp:(.text+0x1b0): multiple definition of `FactionUtil::createTexture(char const*, bool)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x40): first defined here
src/faction_util.o: In function `FactionUtil::getForceLogo(int)':
faction_util.cpp:(.text+0x2c0): multiple definition of `FactionUtil::getForceLogo(int)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x60): first defined here
src/faction_util.o: In function `FactionUtil::getSquadLogo(int)':
faction_util.cpp:(.text+0x360): multiple definition of `FactionUtil::getSquadLogo(int)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x70): first defined here
src/faction_util.o: In function `FactionUtil::createAnimation(char const*)':
faction_util.cpp:(.text+0x410): multiple definition of `FactionUtil::createAnimation(char const*)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x20): first defined here
src/faction_util.o: In function `FactionUtil::LoadFactionPlaylists()':
faction_util.cpp:(.text+0x930): multiple definition of `FactionUtil::LoadFactionPlaylists()'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x50): first defined here
src/faction_util.o: In function `FactionUtil::GetRandCommAnimation(int, Unit*, unsigned char&)':
faction_util.cpp:(.text+0xaa0): multiple definition of `FactionUtil::GetRandCommAnimation(int, Unit*, unsigned char&)'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x0): first defined here
src/faction_util.o: In function `Faction::~Faction()':
faction_util.cpp:(.text+0xcf0): multiple definition of `Faction::~Faction()'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x810): first defined here
src/faction_util.o: In function `Faction::~Faction()':
faction_util.cpp:(.text+0x10a0): multiple definition of `Faction::~Faction()'
src/faction_util_server.o:faction_util_server.cpp:(.text+0x470): first defined here
src/cmd/script/mission.o: In function `Mission::getPlayerMissionNumber()':
......................................................................................................
Code: Select all
#include "cmd/unit_generic.h"
#include "cmd/unit_util.h"
#include "networking/netclient.h"
#include "gfx/animation.h"
Code: Select all
src/cmd/unit_generic.o: In function `Mount::SetMountPosition(Vector const&)':
unit_generic.cpp:(.text+0x0): multiple definition of `Mount::SetMountPosition(Vector const&)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x0): first defined here
src/cmd/unit_generic.o: In function `Mount::SetMountOrientation(Quaternion const&)':
unit_generic.cpp:(.text+0x10): multiple definition of `Mount::SetMountOrientation(Quaternion const&)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x10): first defined here
src/cmd/unit_generic.o: In function `Unit::SetNetworkMode(bool)':
unit_generic.cpp:(.text+0x20): multiple definition of `Unit::SetNetworkMode(bool)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x20): first defined here
src/cmd/unit_generic.o: In function `Unit::SetSerial(unsigned short)':
unit_generic.cpp:(.text+0x30): multiple definition of `Unit::SetSerial(unsigned short)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x30): first defined here
src/cmd/unit_generic.o: In function `Unit::graphic_options::graphic_options()':
unit_generic.cpp:(.text+0x40): multiple definition of `Unit::graphic_options::graphic_options()'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x40): first defined here
src/cmd/unit_generic.o: In function `Unit::graphic_options::graphic_options()':
unit_generic.cpp:(.text+0x70): multiple definition of `Unit::graphic_options::graphic_options()'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x70): first defined here
src/cmd/unit_generic.o: In function `Unit::setFaceCamera()':
unit_generic.cpp:(.text+0xa0): multiple definition of `Unit::setFaceCamera()'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0xa0): first defined here
src/cmd/unit_generic.o: In function `Unit::attackPreference(unsigned char)':
unit_generic.cpp:(.text+0xb0): multiple definition of `Unit::attackPreference(unsigned char)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0xb0): first defined here
src/cmd/unit_generic.o: In function `Unit::unitRole(unsigned char)':
unit_generic.cpp:(.text+0xc0): multiple definition of `Unit::unitRole(unsigned char)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0xc0): first defined here
src/cmd/unit_generic.o: In function `Unit::SetNebula(Nebula*)':
unit_generic.cpp:(.text+0xd0): multiple definition of `Unit::SetNebula(Nebula*)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0xd0): first defined here
src/cmd/unit_generic.o: In function `Unit::InCorrectStarSystem(StarSystem*)':
unit_generic.cpp:(.text+0x120): multiple definition of `Unit::InCorrectStarSystem(StarSystem*)'
src/cmd/unit_generic.o:unit_generic.cpp:(.text+0x120): first defined here
..........................
Yeah, no kidding; I'm more like a blind bull in a china shop.klauss wrote:Perhaps you're attacking the problem from the wrong perspective.
You're trying to change too much of too much code that isn't well understood.
So, would you like me to commit what I have?I would like to try having vegastrike and vegaserver build with different defines... although it brings a whole new set of trouble, perhaps it's more manageable.
The different defines would replace the #include "unit.cpp" with different, proper extern template blah.
I dunno... I'll have to try...
Never commit things that you know don't work. It will haunt you. I always keep SVN clean and working (unless I make a mistake of course), so if somehow I get lost and desperate, I can svn revert and back to square one. Which is good. Not lost anymore.chuck_starchaser wrote:So, would you like me to commit what I have?
Code: Select all
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x20): undefined reference to `GameUnit<Enhancement>::UpgradeSubUnits(Unit const*, int, bool, bool, int&, double&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x30): undefined reference to `GameUnit<Enhancement>::Upgrade(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int, bool, bool)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x40): undefined reference to `GameUnit<Enhancement>::Split(int)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x50): undefined reference to `GameUnit<Enhancement>::Explode(bool, float)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x80): undefined reference to `GameUnit<Enhancement>::TransferUnitToSystem(unsigned int, StarSystem*&, bool)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0x98): undefined reference to `GameUnit<Enhancement>::ArmorDamageSound(Vector const&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xa0): undefined reference to `GameUnit<Enhancement>::HullDamageSound(Vector const&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xa8): undefined reference to `GameUnit<Enhancement>::Thrust(Vector const&, bool)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xb0): undefined reference to `GameUnit<Enhancement>::UpdatePhysics2(Transformation const&, Transformation const&, Vector const&, float, Matrix const&, Vector const&, bool, UnitCollection*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xc8): undefined reference to `GameUnit<Enhancement>::ResolveForces(Transformation const&, Matrix const&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xd0): undefined reference to `GameUnit<Enhancement>::DealDamageToShield(Vector const&, float&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xd8): undefined reference to `GameUnit<Enhancement>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0x20): undefined reference to `GameUnit<Nebula>::UpgradeSubUnits(Unit const*, int, bool, bool, int&, double&)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0x30): undefined reference to `GameUnit<Nebula>::Upgrade(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, int, int, bool, bool)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0x40): undefined reference to `GameUnit<Nebula>::Split(int)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0x50): undefined reference to `GameUnit<Nebula>::Explode(bool, float)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0x80): undefined reference to `GameUnit<Nebula>::TransferUnitToSystem(unsigned int, StarSystem*&, bool)'
......................................
Code: Select all
src/cmd/unit.o:(.rodata._ZTV8GameUnitI11EnhancementE[vtable for GameUnit<Enhancement>]+0xd8): undefined reference to `GameUnit<Enhancement>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6NebulaE[vtable for GameUnit<Nebula>]+0xd8): undefined reference to `GameUnit<Nebula>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI4UnitE[vtable for GameUnit<Unit>]+0xd8): undefined reference to `GameUnit<Unit>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI8BuildingE[vtable for GameUnit<Building>]+0xd8): undefined reference to `GameUnit<Building>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI8AsteroidE[vtable for GameUnit<Asteroid>]+0xd8): undefined reference to `GameUnit<Asteroid>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI6PlanetE[vtable for GameUnit<Planet>]+0xd8): undefined reference to `GameUnit<Planet>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit.o:(.rodata._ZTV8GameUnitI7MissileE[vtable for GameUnit<Missile>]+0xd8): undefined reference to `GameUnit<Missile>::querySphereClickList(int, int, float, Camera*)'
src/cmd/asteroid.o:(.rodata._ZTV12GameAsteroid[vtable for GameAsteroid]+0xd8): undefined reference to `GameUnit<Asteroid>::querySphereClickList(int, int, float, Camera*)'
src/cmd/building.o:(.rodata._ZTV12GameBuilding[vtable for GameBuilding]+0xd8): undefined reference to `GameUnit<Building>::querySphereClickList(int, int, float, Camera*)'
src/cmd/nebula.o:(.rodata._ZTV10GameNebula[vtable for GameNebula]+0xd8): undefined reference to `GameUnit<Nebula>::querySphereClickList(int, int, float, Camera*)'
src/cmd/planet.o:(.rodata._ZTV10GamePlanet[vtable for GamePlanet]+0xd8): undefined reference to `GameUnit<Planet>::querySphereClickList(int, int, float, Camera*)'
src/cmd/planet.o:(.rodata._ZTV14AtmosphereHalo[vtable for AtmosphereHalo]+0xd8): undefined reference to `GameUnit<Unit>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit_factory.o:(.rodata._ZTV15GameEnhancement[vtable for GameEnhancement]+0xd8): undefined reference to `GameUnit<Enhancement>::querySphereClickList(int, int, float, Camera*)'
src/cmd/unit_factory.o:(.rodata._ZTV11GameMissile[vtable for GameMissile]+0xd8): undefined reference to `GameUnit<Missile>::querySphereClickList(int, int, float, Camera*)'
collect2: ld returned 1 exit status
make: *** [vegastrike] Error 1