Page 1 of 1

[r1231]Cannot compile on Linux

Posted: Sat Jul 16, 2011 10:44
by Edward-san
Reference: http://forum.drdteam.org/viewtopic.php?p=50195#p50195

[EDIT]Whoops, this isn't sufficient to fix CMake compilation:

Code: Select all

/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp: In function ‘void I_DeleteRenderer()’:
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp:121:6: error: ‘Renderer’ was not declared in this scope
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp:121:31: error: type ‘<type error>’ argument given to ‘delete’, expected pointer
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp: In function ‘void I_CreateRenderer()’:
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp:127:6: error: ‘Renderer’ was not declared in this scope
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp:130:23: error: expected type-specifier before ‘FSoftwareRenderer’
/home/edward-san/zdoom/gzdoom/trunk/src/sdl/hardware.cpp:130:23: error: expected ‘;’ before ‘FSoftwareRenderer’
[EDIT2]Adding in "src/sdl/renderer.cpp":

Code: Select all

#include "r_renderer.h"
#include "r_swrenderer.h"
creates the .o correctly, but the link fails:
[spoiler]

Code: Select all

CMakeFiles/zdoom.dir/am_map.o: In function `AM_drawAuthorMarkers()':
am_map.cpp:(.text+0x5f0c): undefined reference to `SpriteFrames'
am_map.cpp:(.text+0x608b): undefined reference to `sprites'
am_map.cpp:(.text+0x60b2): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/d_dehacked.o: In function `PatchSprite(int)':
d_dehacked.cpp:(.text+0xe90): undefined reference to `sprites'
CMakeFiles/zdoom.dir/d_dehacked.o: In function `ADehackedPickup::TryPickup(AActor*&)':
d_dehacked.cpp:(.text+0xee9): undefined reference to `sprites'
CMakeFiles/zdoom.dir/d_dehacked.o: In function `LoadDehSupp()':
d_dehacked.cpp:(.text+0x220c): undefined reference to `sprites'
d_dehacked.cpp:(.text+0x2223): undefined reference to `sprites'
d_dehacked.cpp:(.text+0x223e): undefined reference to `sprites'
CMakeFiles/zdoom.dir/d_dehacked.o:d_dehacked.cpp:(.text+0x2f82): more undefined references to `sprites' follow
CMakeFiles/zdoom.dir/d_netinfo.o: In function `Cmd_playerinfo(FCommandLine&, APlayerPawn*, int)':
d_netinfo.cpp:(.text+0xfc): undefined reference to `skins'
CMakeFiles/zdoom.dir/d_netinfo.o: In function `D_SetupUserInfo()':
d_netinfo.cpp:(.text+0x11b4): undefined reference to `R_FindSkin(char const*, int)'
CMakeFiles/zdoom.dir/d_netinfo.o: In function `D_WriteUserInfoStrings(int, unsigned char**, bool)':
d_netinfo.cpp:(.text+0x1d38): undefined reference to `skins'
d_netinfo.cpp:(.text+0x2077): undefined reference to `skins'
CMakeFiles/zdoom.dir/d_netinfo.o: In function `D_ReadUserInfoStrings(int, unsigned char**, bool)':
d_netinfo.cpp:(.text+0x28c8): undefined reference to `R_FindSkin(char const*, int)'
d_netinfo.cpp:(.text+0x2bcc): undefined reference to `skins'
CMakeFiles/zdoom.dir/farchive.o: In function `FArchive::AttachToFile(FFile&)':
farchive.cpp:(.text+0x1406): undefined reference to `sprites'
farchive.cpp:(.text+0x1420): undefined reference to `sprites'
farchive.cpp:(.text+0x1441): undefined reference to `sprites'
CMakeFiles/zdoom.dir/farchive.o: In function `FArchive::WriteSprite(int)':
farchive.cpp:(.text+0x1eb1): undefined reference to `sprites'
farchive.cpp:(.text+0x1f9d): undefined reference to `sprites'
CMakeFiles/zdoom.dir/farchive.o: In function `FArchive::ReadSprite()':
farchive.cpp:(.text+0x207c): undefined reference to `NumStdSprites'
farchive.cpp:(.text+0x2089): undefined reference to `sprites'
farchive.cpp:(.text+0x20b7): undefined reference to `sprites'
farchive.cpp:(.text+0x20eb): undefined reference to `sprites'
CMakeFiles/zdoom.dir/info.o: In function `GetSpriteIndex(char const*, bool)':
info.cpp:(.text+0x6c7): undefined reference to `sprites'
info.cpp:(.text+0x6d3): undefined reference to `sprites'
CMakeFiles/zdoom.dir/info.o:info.cpp:(.text+0x744): more undefined references to `sprites' follow
CMakeFiles/zdoom.dir/p_mobj.o: In function `AActor::Serialize(FArchive&)':
p_mobj.cpp:(.text+0x113f): undefined reference to `skins'
CMakeFiles/zdoom.dir/p_mobj.o: In function `_ZN6AActor8SetStateEP6FStateb.clone.48':
p_mobj.cpp:(.text+0x15a3): undefined reference to `skins'
CMakeFiles/zdoom.dir/p_mobj.o: In function `AActor::SetState(FState*, bool)':
p_mobj.cpp:(.text+0x21a3): undefined reference to `skins'
CMakeFiles/zdoom.dir/p_mobj.o: In function `AActor::Grind(bool)':
p_mobj.cpp:(.text+0x6156): undefined reference to `sprites'
p_mobj.cpp:(.text+0x62f1): undefined reference to `sprites'
CMakeFiles/zdoom.dir/p_mobj.o: In function `P_SpawnPlayer(FMapThing*, bool)':
p_mobj.cpp:(.text+0x9fbe): undefined reference to `skins'
p_mobj.cpp:(.text+0x9fc3): undefined reference to `R_FindSkin(char const*, int)'
p_mobj.cpp:(.text+0xa037): undefined reference to `skins'
CMakeFiles/zdoom.dir/p_mobj.o: In function `P_SpawnMapThing(FMapThing*, int)':
p_mobj.cpp:(.text+0xac20): undefined reference to `sprites'
CMakeFiles/zdoom.dir/p_setup.o: In function `P_Init()':
p_setup.cpp:(.text+0x591a): undefined reference to `R_InitSprites()'
CMakeFiles/zdoom.dir/p_user.o: In function `APlayerPawn::BeginPlay()':
p_user.cpp:(.text+0xc57): undefined reference to `sprites'
p_user.cpp:(.text+0xc77): undefined reference to `sprites'
CMakeFiles/zdoom.dir/p_user.o: In function `APlayerPawn::GetSoundClass()':
p_user.cpp:(.text+0x2590): undefined reference to `numskins'
p_user.cpp:(.text+0x25a2): undefined reference to `skins'
CMakeFiles/zdoom.dir/p_user.o: In function `P_CheckPlayerSprites()':
p_user.cpp:(.text+0x2b3a): undefined reference to `skins'
p_user.cpp:(.text+0x2b96): undefined reference to `skins'
p_user.cpp:(.text+0x2bf9): undefined reference to `skins'
CMakeFiles/zdoom.dir/r_things.o: In function `R_DeinitSprites()':
r_things.cpp:(.text+0x687): undefined reference to `R_DeinitSpriteData()'
CMakeFiles/zdoom.dir/r_things.o: In function `R_ProjectSprite(AActor*, int, F3DFloor*, F3DFloor*)':
r_things.cpp:(.text+0xfad): undefined reference to `SpriteFrames'
r_things.cpp:(.text+0x1439): undefined reference to `sprites'
r_things.cpp:(.text+0x1455): undefined reference to `sprites'
r_things.cpp:(.text+0x1484): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/r_things.o: In function `R_DrawPSprite(pspdef_t*, int, AActor*, int, int)':
r_things.cpp:(.text+0x1e8d): undefined reference to `sprites'
r_things.cpp:(.text+0x1ea8): undefined reference to `sprites'
r_things.cpp:(.text+0x1ed3): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/v_video.o: In function `DFrameBuffer::GetHitlist(unsigned char*)':
v_video.cpp:(.text+0x92b): undefined reference to `sprites'
v_video.cpp:(.text+0x936): undefined reference to `sprites'
v_video.cpp:(.text+0x978): undefined reference to `sprites'
v_video.cpp:(.text+0x9a5): undefined reference to `sprites'
v_video.cpp:(.text+0x9d4): undefined reference to `SpriteFrames'
v_video.cpp:(.text+0xaba): undefined reference to `sprites'
CMakeFiles/zdoom.dir/g_shared/a_morph.o: In function `P_UndoPlayerMorph(player_t*, player_t*, int, bool)':
a_morph.cpp:(.text+0xc5a): undefined reference to `numskins'
CMakeFiles/zdoom.dir/g_shared/a_morph.o: In function `P_MorphedDeath(AActor*, AActor**, int*, int*)':
a_morph.cpp:(.text+0x1dbf): undefined reference to `numskins'
CMakeFiles/zdoom.dir/g_shared/a_weapons.o: In function `AWeapon::TryPickup(AActor*&)':
a_weapons.cpp:(.text+0x123b): undefined reference to `sprites'
CMakeFiles/zdoom.dir/g_shared/sbar_mugshot.o: In function `FMugShot::GetFace(player_t*, char const*, int, FMugShot::StateFlags)':
sbar_mugshot.cpp:(.text+0xcac): undefined reference to `skins'
CMakeFiles/zdoom.dir/g_shared/shared_hud.o: In function `DrawOneKey(int, int&, int&, int&, AInventory*)':
shared_hud.cpp:(.text+0x649): undefined reference to `sprites'
shared_hud.cpp:(.text+0x68a): undefined reference to `sprites'
shared_hud.cpp:(.text+0x6a5): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/g_shared/shared_hud.o: In function `_ZL13DrawOneWeaponP8player_tiRiP7AWeapon.clone.32':
shared_hud.cpp:(.text+0x82d): undefined reference to `sprites'
shared_hud.cpp:(.text+0x849): undefined reference to `sprites'
shared_hud.cpp:(.text+0x864): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/intermission/intermission.o: In function `DIntermissionScreenCast::Drawer()':
intermission.cpp:(.text+0x16ad): undefined reference to `sprites'
intermission.cpp:(.text+0x16ca): undefined reference to `SpriteFrames'
intermission.cpp:(.text+0x17a0): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playerdisplay.o: In function `FListMenuItemPlayerDisplay::Drawer(bool)':
playerdisplay.cpp:(.text+0x3d1): undefined reference to `skins'
playerdisplay.cpp:(.text+0x3ef): undefined reference to `sprites'
playerdisplay.cpp:(.text+0x40a): undefined reference to `SpriteFrames'
playerdisplay.cpp:(.text+0x5c9): undefined reference to `sprites'
playerdisplay.cpp:(.text+0x5e8): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::UpdateTranslation()':
playermenu.cpp:(.text+0x1790): undefined reference to `skins'
playermenu.cpp:(.text+0x1799): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x17bc): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::PickPlayerClass()':
playermenu.cpp:(.text+0x18a5): undefined reference to `skins'
playermenu.cpp:(.text+0x18aa): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x18cd): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::SendNewColor(int, int, int)':
playermenu.cpp:(.text+0x19dd): undefined reference to `skins'
playermenu.cpp:(.text+0x19e6): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x1a08): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::UpdateSkins()':
playermenu.cpp:(.text+0x1d30): undefined reference to `numskins'
playermenu.cpp:(.text+0x1d59): undefined reference to `numskins'
playermenu.cpp:(.text+0x1dd4): undefined reference to `skins'
playermenu.cpp:(.text+0x1e08): undefined reference to `numskins'
playermenu.cpp:(.text+0x1e98): undefined reference to `skins'
playermenu.cpp:(.text+0x1ea1): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x1ec3): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::Init(DMenu*, FListMenuDescriptor*)':
playermenu.cpp:(.text+0x1fe9): undefined reference to `skins'
playermenu.cpp:(.text+0x1fee): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x2010): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::ColorSetChanged(FListMenuItem*)':
playermenu.cpp:(.text+0x277a): undefined reference to `skins'
playermenu.cpp:(.text+0x2783): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x27a5): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::ClassChanged(FListMenuItem*)':
playermenu.cpp:(.text+0x28f9): undefined reference to `skins'
playermenu.cpp:(.text+0x28fe): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x2922): undefined reference to `skins'
playermenu.cpp:(.text+0x29b3): undefined reference to `skins'
playermenu.cpp:(.text+0x29bc): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x29de): undefined reference to `skins'
CMakeFiles/zdoom.dir/menu/playermenu.o: In function `DPlayerMenu::SkinChanged(FListMenuItem*)':
playermenu.cpp:(.text+0x2b4f): undefined reference to `skins'
playermenu.cpp:(.text+0x2b58): undefined reference to `R_FindSkin(char const*, int)'
playermenu.cpp:(.text+0x2b7a): undefined reference to `skins'
playermenu.cpp:(.text+0x2bb5): undefined reference to `skins'
CMakeFiles/zdoom.dir/gl/data/gl_data.o: In function `gl_GetSpriteFrame(unsigned int, int, int, unsigned int, bool*)':
gl_data.cpp:(.text+0x67f): undefined reference to `sprites'
gl_data.cpp:(.text+0x6a1): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/gl/dynlights/gl_dynlight.o: In function `FInternalLightAssociation::FInternalLightAssociation(FLightAssociation*)':
gl_dynlight.cpp:(.text+0x195b): undefined reference to `sprites'
gl_dynlight.cpp:(.text+0x1976): undefined reference to `sprites'
CMakeFiles/zdoom.dir/gl/models/gl_models.o: In function `_Z17gl_FindModelFramePK6PClassiib.clone.34':
gl_models.cpp:(.text+0x14a): undefined reference to `sprites'
gl_models.cpp:(.text+0x169): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/gl/models/gl_models.o: In function `gl_InitModels()':
gl_models.cpp:(.text+0x121d): undefined reference to `sprites'
gl_models.cpp:(.text+0x122a): undefined reference to `sprites'
CMakeFiles/zdoom.dir/gl/models/gl_models.o: In function `gl_FindModelFrame(PClass const*, int, int, bool)':
gl_models.cpp:(.text+0x1652): undefined reference to `sprites'
gl_models.cpp:(.text+0x1671): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/textures/buildtexture.o: In function `FTextureManager::AddTiles(void*)':
buildtexture.cpp:(.text+0x4e4): undefined reference to `SpriteFrames'
buildtexture.cpp:(.text+0x4ea): undefined reference to `SpriteFrames'
buildtexture.cpp:(.text+0x50e): undefined reference to `SpriteFrames'
buildtexture.cpp:(.text+0x517): undefined reference to `SpriteFrames'
CMakeFiles/zdoom.dir/textures/buildtexture.o:buildtexture.cpp:(.text+0x52c): more undefined references to `SpriteFrames' follow
CMakeFiles/zdoom.dir/thingdef/thingdef_codeptr.o: In function `AFP_A_PlayerSkinCheck(AActor*, AActor*, FState*, int, StateCallData*)':
thingdef_codeptr.cpp:(.text+0x82b9): undefined reference to `skins'
CMakeFiles/zdoom.dir/r_data/voxels.o: In function `R_InitVoxels()':
voxels.cpp:(.text+0x171a): undefined reference to `VOX_AddVoxel(int, int, FVoxelDef*)'
voxels.cpp:(.text+0x1984): undefined reference to `VOX_AddVoxel(int, int, FVoxelDef*)'
CMakeFiles/zdoom.dir/r_data/r_translate.o: In function `_ZL25R_CreatePlayerTranslationfffPK15FPlayerColorSetP11FPlayerSkinP11FRemapTableS5_.clone.9':
r_translate.cpp:(.text+0x962): undefined reference to `OtherGameSkinRemap'
r_translate.cpp:(.text+0x974): undefined reference to `OtherGameSkinPalette'
r_translate.cpp:(.text+0xa65): undefined reference to `sprites'
CMakeFiles/zdoom.dir/r_data/r_translate.o: In function `R_BuildPlayerTranslation(int)':
r_translate.cpp:(.text+0x4934): undefined reference to `skins'
collect2: ld returned 1 exit status
make[2]: *** [gzdoom] Error 1
make[1]: *** [src/CMakeFiles/zdoom.dir/all] Error 2
make: *** [all] Error 2
[/spoiler]

Re: [r1231]Cannot compile on Linux

Posted: Mon Aug 01, 2011 15:09
by Gez
Edward-san wrote: [EDIT2]Adding in "src/sdl/renderer.cpp":

Code: Select all

#include "r_renderer.h"
#include "r_swrenderer.h"
You mean hardware.cpp, right? There's no renderer.cpp file.

The other problems seem to stem from r_data/sprites.cpp not being compiled. Tell me if it works now.

Re: [r1231]Cannot compile on Linux

Posted: Mon Aug 01, 2011 16:46
by Edward-san
Yeah, it really works now! Thank you!