FIFE forums

Please login or register.

Login with username, password and session length
Advanced search  

News:

FIFE 0.4.0 has been released on 15th of January, 2017!

Author Topic: Visual Studios build errors missing fifechan files.  (Read 1860 times)

Jeremy

  • Newbie
  • Posts: 3
    • View Profile
Visual Studios build errors missing fifechan files.
« on: July 06, 2013, 12:24:49 am »

Hello,

I'm trying to get a successful build using FIFE, but no matter what I do, files are constantly missing and the guides I've been trying to follow (regarding what scripts to execute and where they are) must be missing steps.

I am using the installation guide here: http://archivewiki.fifengine.net/Building:Win32:VisualStudio

I have checked out the repository and placed it under C:\Program Files(x86)\FIFE (due to missing files, I also installed the SDK here to try and trouble shoot)

When I try and compile, I get error regarding fifechan headers missing (I'm missing a few others, fifechan/color.hpp, etc...):

c:\program files (x86)\fife\engine\core\gui\fifechan\util\utf8\utf8stringeditor.h(28): fatal error C1083: Cannot open include file: 'fifechan.hpp': No such file or directory

I'm assuming these files are generated and I haven't executed the proper script to generate them?
« Last Edit: July 06, 2013, 12:32:48 am by Jeremy »
Logged

helios

  • Developer
  • Jr. Member
  • *
  • Posts: 60
    • View Profile
Re: Visual Studios build errors missing fifechan files.
« Reply #1 on: July 06, 2013, 06:48:55 am »

Hey Jeremy,
sorry for the trouble but the guides and SDK will not work for the git master version of FIFE. It is a part of the preparation for the next release to update them.
You have two options, first you could try to compile fifechan on your own. The source is here https://github.com/fifengine/fifechan
The other option would be to use the new SDK, which contains fifechan but I think the MSVC project files are not up to date. But should not be too difficult to adapt. http://files.parpg.net/fife_sdk_nov2012_prelease.7z
Logged

Jeremy

  • Newbie
  • Posts: 3
    • View Profile
Re: Visual Studios build errors missing fifechan files.
« Reply #2 on: July 07, 2013, 07:06:18 am »

Alright, I tired using the SDK you suggested (the prerelease) I had to get MSVC10.0 boost libraries but aside from that, the code compiled fine but I'm getting a ton of linking errors.

I am linking to the following static libraries, so Im not sure why I'd be missing these symbols:
Code: [Select]
glu32.lib
guichan_opengl.lib
guichan_sdl.lib
guichan.lib
ogg_static.lib
openal32.lib
opengl32.lib
sdl_d.lib
sdlmain_d.lib
SDL_image.lib
SDL_ttf.lib
vorbis_static.lib
vorbisfile_static.lib
libpng.lib
zlib.lib

Code: [Select]
1>------ Build started: Project: fife, Configuration: Debug_python Win32 ------
1>  scons: Entering directory `C:\Program Files (x86)\FIFE'
1>  scons: Reading SConscript files ...
1>  Checking for tinyxml (using pkg-config)...(cached) no
1>  Checking for tinyxml (using tinyxml-config)... (cached) no
1>  Checking for C++ library tinyxml... (cached) no
1>EXEC : warning : System version of tinyxml not found, using local version as fallback
1>  Building RELEASE binaries...
1>  scons: done reading SConscript files.
1>  scons: Building targets ...
1>  swig -o build\engine\release\swigwrappers\python\fife_wrap.cc -outdir "engine\python\fife" -Ibuild\engine\release\core -Iengine\core -python -c++ -w511 -w473 -w404 engine\swigwrappers\python\fife.i
1>  swig -o build\engine\release\swigwrappers\python\fifechan_wrap.cc -outdir "engine\python\fife" -Ibuild\engine\release\core -Iengine\core -python -c++ -w511 engine\swigwrappers\python\fifechan.i
1>  scons: done building targets.
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(990,5): warning MSB8012: TargetPath(C:\Program Files (x86)\FIFE\build\win32\build_environments\visual_studio_9\Debug_python\fife.dll) does not match the Linker's OutputFile property value (C:\Program Files (x86)\FIFE\build\win32\build_environments\visual_studio_9\Debug_python\_fife.pyd). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(991,5): warning MSB8012: TargetExt(.dll) does not match the Linker's OutputFile property value (.pyd). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(992,5): warning MSB8012: TargetName(fife) does not match the Linker's OutputFile property value (_fife). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
1>     Creating library C:\Program Files (x86)\FIFE\build\win32\build_environments\visual_studio_9\Debug_python\fife.lib and object C:\Program Files (x86)\FIFE\build\win32\build_environments\visual_studio_9\Debug_python\fife.exp
1>gui_font.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall fcn::Font::getStringIndexAt(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int)const " (?getStringIndexAt@Font@fcn@@UBEHABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@H@Z)
1>gui_image.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall fcn::Image::~Image(void)" (??1Image@fcn@@UAE@XZ) referenced in function "public: virtual __thiscall FIFE::GuiImage::~GuiImage(void)" (??1GuiImage@FIFE@@UAE@XZ)
1>gui_image.obj : error LNK2019: unresolved external symbol "public: __thiscall fcn::Image::Image(void)" (??0Image@fcn@@QAE@XZ) referenced in function "public: __thiscall FIFE::GuiImage::GuiImage(void)" (??0GuiImage@FIFE@@QAE@XZ)
1>gui_image.obj : error LNK2019: unresolved external symbol "public: __thiscall fcn::Color::Color(void)" (??0Color@fcn@@QAE@XZ) referenced in function "public: virtual class fcn::Color __thiscall FIFE::GuiImage::getPixel(int,int)" (?getPixel@GuiImage@FIFE@@UAE?AVColor@fcn@@HH@Z)
1>icon2.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::Color::Color(void)" (??0Color@fcn@@QAE@XZ)
1>togglebutton.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::Color::Color(void)" (??0Color@fcn@@QAE@XZ)
1>opengl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall fcn::OpenGLGraphics::~OpenGLGraphics(void)" (??1OpenGLGraphics@fcn@@UAE@XZ) referenced in function __unwindfunclet$??0OpenGLGuiGraphics@FIFE@@QAE@XZ$0
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual __thiscall fcn::OpenGLGraphics::~OpenGLGraphics(void)" (??1OpenGLGraphics@fcn@@UAE@XZ)
1>opengl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: __thiscall fcn::Color::Color(int,int,int,int)" (??0Color@fcn@@QAE@HHHH@Z) referenced in function "public: __thiscall FIFE::OpenGLGuiGraphics::OpenGLGuiGraphics(void)" (??0OpenGLGuiGraphics@FIFE@@QAE@XZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::Color::Color(int,int,int,int)" (??0Color@fcn@@QAE@HHHH@Z)
1>console.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::Color::Color(int,int,int,int)" (??0Color@fcn@@QAE@HHHH@Z)
1>opengl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall fcn::OpenGLGraphics::setTargetPlane(int,int)" (?setTargetPlane@OpenGLGraphics@fcn@@UAEXHH@Z) referenced in function "public: __thiscall FIFE::OpenGLGuiGraphics::OpenGLGuiGraphics(void)" (??0OpenGLGuiGraphics@FIFE@@QAE@XZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::OpenGLGraphics::setTargetPlane(int,int)" (?setTargetPlane@OpenGLGraphics@fcn@@UAEXHH@Z)
1>opengl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: __thiscall fcn::OpenGLGraphics::OpenGLGraphics(void)" (??0OpenGLGraphics@fcn@@QAE@XZ) referenced in function "public: __thiscall FIFE::OpenGLGuiGraphics::OpenGLGuiGraphics(void)" (??0OpenGLGuiGraphics@FIFE@@QAE@XZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::OpenGLGraphics::OpenGLGraphics(void)" (??0OpenGLGraphics@fcn@@QAE@XZ)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual class fcn::ClipRectangle const & __thiscall fcn::Graphics::getCurrentClipArea(void)" (?getCurrentClipArea@Graphics@fcn@@UAEABVClipRectangle@2@XZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual class fcn::ClipRectangle const & __thiscall fcn::Graphics::getCurrentClipArea(void)" (?getCurrentClipArea@Graphics@fcn@@UAEABVClipRectangle@2@XZ)
1>sdl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual class fcn::ClipRectangle const & __thiscall fcn::Graphics::getCurrentClipArea(void)" (?getCurrentClipArea@Graphics@fcn@@UAEABVClipRectangle@2@XZ)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawImage(class fcn::Image const *,int,int)" (?drawImage@Graphics@fcn@@UAEXPBVImage@2@HH@Z)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawImage(class fcn::Image const *,int,int)" (?drawImage@Graphics@fcn@@UAEXPBVImage@2@HH@Z)
1>sdl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawImage(class fcn::Image const *,int,int)" (?drawImage@Graphics@fcn@@UAEXPBVImage@2@HH@Z)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual class fcn::Color const & __thiscall fcn::OpenGLGraphics::getColor(void)const " (?getColor@OpenGLGraphics@fcn@@UBEABVColor@2@XZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual class fcn::Color const & __thiscall fcn::OpenGLGraphics::getColor(void)const " (?getColor@OpenGLGraphics@fcn@@UBEABVColor@2@XZ)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::setFont(class fcn::Font *)" (?setFont@Graphics@fcn@@UAEXPAVFont@2@@Z)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::setFont(class fcn::Font *)" (?setFont@Graphics@fcn@@UAEXPAVFont@2@@Z)
1>sdl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::setFont(class fcn::Font *)" (?setFont@Graphics@fcn@@UAEXPAVFont@2@@Z)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawText(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int,int,enum fcn::Graphics::Alignment)" (?drawText@Graphics@fcn@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HHW4Alignment@12@@Z)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawText(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int,int,enum fcn::Graphics::Alignment)" (?drawText@Graphics@fcn@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HHW4Alignment@12@@Z)
1>sdl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall fcn::Graphics::drawText(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,int,int,enum fcn::Graphics::Alignment)" (?drawText@Graphics@fcn@@UAEXABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@HHW4Alignment@12@@Z) referenced in function __unwindfunclet$??0SdlGuiGraphics@FIFE@@QAE@XZ$0
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall fcn::OpenGLGraphics::getTargetPlaneWidth(void)const " (?getTargetPlaneWidth@OpenGLGraphics@fcn@@UBEHXZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall fcn::OpenGLGraphics::getTargetPlaneWidth(void)const " (?getTargetPlaneWidth@OpenGLGraphics@fcn@@UBEHXZ)
1>opengl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall fcn::OpenGLGraphics::getTargetPlaneHeight(void)const " (?getTargetPlaneHeight@OpenGLGraphics@fcn@@UBEHXZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual int __thiscall fcn::OpenGLGraphics::getTargetPlaneHeight(void)const " (?getTargetPlaneHeight@OpenGLGraphics@fcn@@UBEHXZ)
1>opengl_gui_graphics.obj : error LNK2019: unresolved external symbol "public: virtual bool __thiscall fcn::Graphics::pushClipArea(class fcn::Rectangle)" (?pushClipArea@Graphics@fcn@@UAE_NVRectangle@2@@Z) referenced in function "public: virtual void __thiscall FIFE::OpenGLGuiGraphics::_beginDraw(void)" (?_beginDraw@OpenGLGuiGraphics@FIFE@@UAEXXZ)
1>opengle_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall fcn::Graphics::pushClipArea(class fcn::Rectangle)" (?pushClipArea@Graphics@fcn@@UAE_NVRectangle@2@@Z)
1>sdl_gui_graphics.obj : error LNK2001: unresolved external symbol "public: virtual bool __thiscall fcn::Graphics::pushClipArea(class fcn::Rectangle)" (?pushClipArea@Graphics@fcn@@UAE_NVRectangle@2@@Z)
1>clicklabel.obj : error LNK2001: unresolved external symbol "public: __thiscall fcn::Rectangle::Rectangle(int,int,int,int)" (??0Rectangle@fcn@@QAE@HHHH@Z)
(continued...)
Logged

vtchill

  • Developer
  • Full Member
  • *
  • Posts: 206
    • View Profile
Re: Visual Studios build errors missing fifechan files.
« Reply #3 on: July 07, 2013, 04:02:04 pm »

All of those linker errors are fifechan related which probably means you are not linking correctly against the fifechan lib that you built.

When you build fifechan it should generate a lib and that is what you will need to link against in your linker options.
Logged

Jeremy

  • Newbie
  • Posts: 3
    • View Profile
Re: Visual Studios build errors missing fifechan files.
« Reply #4 on: July 07, 2013, 04:08:53 pm »

Okay, I was able to build fifechan.lib (it was referencing a basiccontainer.cpp that didn't exist... so I deleted the reference to it?)

I'm now trying to build fifechan_sdl.lib so we'll see how that goes.
« Last Edit: July 07, 2013, 11:56:06 pm by Jeremy »
Logged