The problem is not the bug or the fix, but the artificial rigid concept of the 'SDK'.Vezzra wrote:Now we not only need to patch boost, but SDL too?? This is getting ridiculous. What's up with all those libraries and their includes?
FreeOrion Windows SDK
Moderator: Committer
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: FreeOrion Windows SDK
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Re: FreeOrion Windows SDK
Wouldn't this particular problem arise anyway, even if the MSVC 2013 project and all dependencies would be produced/resolved entirely by the cmake scripts? I mean, this is obviously a bug in the header files of SDL2...?adrian_broher wrote:The problem is not the bug or the fix, but the artificial rigid concept of the 'SDK'.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
Switching to the XP-target configuration? I'd prefer not.Vezzra wrote:The changes to the build configuration of the MSVC 2013 project should be committed.
Re: FreeOrion Windows SDK
That means that binaries build with MSVC 2013 wouldn't be compatible with XP anymore. Do you intend to drop backward compatibility with XP?Geoff the Medio wrote:Switching to the XP-target configuration? I'd prefer not.
An alternative would be to create an additional build configuration ("Release-Win32-XP" or something like that). Would that be ok with you?
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
Not if easily avoidable, but I'd rather have the builds from MSVC 2013 by default take advantage of all the latest tweaks they've included, assuming there are some, without having to go in and adjust all the settings.Vezzra wrote:Do you intend to drop backward compatibility with XP?
That seems reasonable.An alternative would be to create an additional build configuration ("Release-Win32-XP" or something like that).
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: FreeOrion Windows SDK
The bug was introduced on the way from SDL 2.0.2 to SDL 2.0.3 so you could eitherVezzra wrote:Wouldn't this particular problem arise anyway, even if the MSVC 2013 project and all dependencies would be produced/resolved entirely by the cmake scripts? I mean, this is obviously a bug in the header files of SDL2...?
1. replace SDL 2.0.3 with SDL 2.0.2
2. patch the bug with SDL master/HEAD
Both would be easier to handle if you don't need to do all this precompiling and distributing the SDK for every of those (kind of) change but instead to tell the build system to either use another dependency version (SDL 2.0.2 instead of SDL 2.0.3) or to patch the bugs beforehand.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
As previously explained, the point of the SDK is not to be easy / simple for existing developers.adrian_broher wrote:Both would be easier to handle if you don't need to do all this precompiling and distributing the SDK for every of those (kind of) change but instead to tell the build system to either use another dependency version (SDL 2.0.2 instead of SDL 2.0.3) or to patch the bugs beforehand.
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: FreeOrion Windows SDK
I think we're both aware of each others opinion on this topic.Geoff the Medio wrote:As previously explained, the point of the SDK is not to be easy / simple for existing developers.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
From my tests / building just now, it seems like alut is also not actually needed. The .lib, .pdb, and .dll can probably be removed from both the 2010 and 2013 SDKs.Geoff the Medio wrote:The lack of the jpeg.dll I think was due to not using Ogre anymore. Try running the MSVC build without it present and after removing it from the project files... it probably will work.
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: FreeOrion Windows SDK
The alut dependency was dropped with commit 0c3a19fa / revision 6782 when we ogg-ified all existing sound files.Geoff the Medio wrote:From my tests / building just now, it seems like alut is also not actually needed. The .lib, .pdb, and .dll can probably be removed from both the 2010 and 2013 SDKs.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
I think I've built all the dependencies in MSVC 2010 using the same source code as the MSVC 2013 SDK. When I try to build GiGi I get some deep-boost errors seemingly related to regex.Vezzra wrote:Ugh. Can I leave that to you?Geoff the Medio wrote:Probably the two sets of dependencies could be made the same by building them all in MSVC 2010 as well.
Only difference relevant to that should be the Boost version, from 1.56 in the old SDK to 1.58 now.
- Attachments
-
- boost_compile_error.zip
- error-ridden part of build log
- (4.27 KiB) Downloaded 232 times
Re: FreeOrion Windows SDK
Although I'm way out of my depth here, there is one strange thing I noticed at a first quick glance in the build log:Geoff the Medio wrote:When I try to build GiGi I get some deep-boost errors seemingly related to regex.
Code: Select all
cannot convert parameter 1 from 'const boost::fusion::cons_iterator<Cons>' to 'const boost::xpressive::detail::static_xpression<Matcher,Next> &'
Re: FreeOrion Windows SDK
"cdr" and "cons" are Lisp list-manipulation terms/commands, which could fit well enough here. So maybe worth looking at, but not horribly suspicious.Vezzra wrote:Although I'm way out of my depth here, there is one strange thing I noticed at a first quick glance in the build log:Um, cons_iterator<Cons>...? Maybe that's intentional for whatever reason, but I'd expect const_iterator<Const>?Code: Select all
cannot convert parameter 1 from 'const boost::fusion::cons_iterator<Cons>' to 'const boost::xpressive::detail::static_xpression<Matcher,Next> &'
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: FreeOrion Windows SDK
Geoff, how do you invoke ./b2.exe when building the SDK?
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: FreeOrion Windows SDK
A batch file:adrian_broher wrote:Geoff, how do you invoke ./b2.exe when building the SDK?
Code: Select all
@REM ZLIB files
set NO_ZLIB=0
@REM explicitly enable compression
set NO_COMPRESSION=0
@REM the actual call to boost build
b2 toolset=msvc-10.0 variant=release link=shared threading=multi runtime-link=shared debug-symbols=on debug-store=database --build-dir=C:\Users\Geoff\Desktop\FO_Deps_MSVS2010\boost_build -sZLIB_SOURCE=C:\Users\Geoff\Desktop\FO_Deps_MSVS2010\zlib-1.2.8 --without-mpi