Mar 4 2011, 06:17 AM
Yes, this is my first attempt at compiling anything for the xbox so please bear with me.
I think I have everything I need in the way of development stuff but I am getting a few errors at the end of compilation. I was able to use google to solve the other issues that I had but the buck stopped with these:
C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\menu.cpp(2390): error C3861: 'SDL_SetHardwareFilter': identifier not found, even with argument-dependent lookup
C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\main.cpp(1490): error C3861: 'SDL_SetHardwareFilter': identifier not found, even with argument-dependent lookup
C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\gfx.cpp(167): error C2065: 'SDL_10X11PIXELASPECTRATIO' : undeclared identifier
C:\Documents and Settings\XPMUser\Desktop\smw-1.8-beta2-src\_src\gfx.cpp(169): error C3861: 'SDL_SetVideoModeWithFlickerFilter': identifier not found, even with argument-dependent lookup
Can anyone shed some light on these errors so I can hopefully get this done??
Mar 4 2011, 06:56 PM
It looks like you aren't linking libSDLx correctly. You can do this a couple of ways.
You can add it to your set of libraries in Visual Studio, or you can add them as an "Additional Dependency" and locate them in "Additional Library Directories" under Project Properties -> Librarian -> General.
I'll link to Hyper_Eye's instructions for including libSDLx the right way:http://forums.xbox-scene.com/index.php?s=&...t&p=4649051
Also would recommend using Hyper_Eye's work on libSDLx:http://forums.xbox-scene.com/index.php?showtopic=710866
Mar 4 2011, 09:45 PM
SMW uses some function that are not contained in SDLx. They added them for their purposes but they were not incorporated into SDLx. I asked the SMW guys for those functions so they can be commited to my repository and they have said they would be willing to send them to me but the back-and-forth has been pretty slow (as much my fault as theirs) so I do not have them yet. In the meantime I was able to compile 1.8-beta2 by commenting out the parts with missing API. They are not essential to building and running SMW. You will be missing their filters and the flicker free stuff but most people wouldn't notice the difference. You will only notice on certain televisions. I never made my build available though because I felt it best to wait for those functions so that features are not missing compared to the last build.
Mar 4 2011, 11:30 PM
Scratch what I said about Additional Library Dependencies. I was referencing a .lib file. You would have to add them in Project Properties -> C++ -> General for the includes and Linker -> General and Linker -> Input for the library dependencies.
Follow Hyper_Eye's instructions though.
Mar 5 2011, 06:37 PM
OK, I got a little further. Figured out how to comment out what I needed to and now I think I am having a linker issue because now I have a bunch of "unresolved external symbol" errors when I try to build.
When I go to "Project">"SuperMarioWar Properties", Configuration Properties>Linker>General, the output file name says $(OutDir)/$(ProjectName).exe. I am guessing that isn't right. I have it set to "xbox platform".
I know I am pretty close to getting done tho so can anyone help me set up this (hopefully) last step.
Thanks a bundle for the help thus far.
Mar 5 2011, 08:32 PM
The output is fine. The way the linker works is it outputs an exe and then it runs a tool to convert that to an xbe. You will find the xbe target filename under the "Xbox Image" section. What are some of the linker errors you are getting?
Mar 5 2011, 08:48 PM
I have a long list here but here are just of few of them:
SuperMarioWar error LNK2019: unresolved external symbol "public: bool __thiscall CO_ThrowBox::HasKillVelocity(void)" (?HasKillVelocity@CO_ThrowBox@@QAE_NXZ) referenced in function "public: void __thiscall CPlayerAI::GetNearestObjects(void)" (?GetNearestObjects@CPlayerAI@@QAEXXZ)
SuperMarioWar error LNK2019: unresolved external symbol "public: __thiscall MO_FrenzyCard::MO_FrenzyCard(class gfxSprite *,short)" (??0MO_FrenzyCard@@QAE@PAVgfxSprite@@F@Z) referenced in function "public: virtual void __thiscall CGM_Frenzy::think(void)" (?think@CGM_Frenzy@@UAEXXZ)
SuperMarioWar error LNK2019: unresolved external symbol "public: void __thiscall CO_Flag::placeFlag(void)" (?placeFlag@CO_Flag@@QAEXXZ) referenced in function "public: virtual short __thiscall CGM_CaptureTheFlag::playerkilledself(class CPlayer &,enum killstyle)" (?playerkilledself@CGM_CaptureTheFlag@@UAEFAAVCPlayer@@W4killstyle@@@Z)
SuperMarioWar error LNK2019: unresolved external symbol "class IO_MovingObject * __cdecl createpowerup(short,short,short,bool,bool)" (?createpowerup@@YAPAVIO_MovingObject@@FFF_N0@Z) referenced in function "void __cdecl CheckSecret(short)" (?CheckSecret@@YAXF@Z)
Mar 5 2011, 08:55 PM
That looks like some object files are missing. That would imply some of the source didn't get compiled. It could be that the profile you are building wasn't kept updated. Try the release profiles or one of the release variants.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here