Uwe Stöhr wrote:

> Am 06.12.2015 um 12:32 schrieb Georg Baum:
> 
>>> Good news: I am able to compile LyX 2.2.0alpha2 with Qt 5.5.1 using MSVC
>>> 2013 (32bit).
>>
>> Did you recompile the dependencies iconv, hunspell and zlib with MSVC
>> 2013?
> 
> Of course not. I don't know how to do this and who did this in the past.

OK, this is a problem. It is not possible to mix code compiled with 
different MSVC versions. I have first hand experience with that (forgot to 
recompile a library after upgrading MSVC), this leads to hard to find 
runtime bugs that you really do not want to debug (can easily suck away 
hours or even days for debugging). If my experience is not convincing 
enough, read this: http://siomsystems.com/mixing-visual-studio-versions/ 
(caution: very long, very technical, but a good read for anybody who is 
interested in the details).

BTW, to check whether different MSVC versions were used for any .exe, use 
dependency walker: If it finds more than one MSVCRXXX.DLL or MSVCPXXX.DLL, 
where XXX is e.g. 100 for MSVC 2010 or 120 for MSVC 2013 (120 is no typo), 
then you are in trouble.

> So since I cannot compile iconv and friends with MSVC 2013, I cannot
> release a LyX 2.2 version?

There are only two options: Either you recompile all dependencies (including 
qt btw, if no binary package compiled with MSVC 2013 is offered) with MSVC 
2013, or you need to compile LyX with MSVC 2010. If you cannot recompile the 
dependencies with MSVC 2013, and cannot find somebody else to do it, you 
have to stick to MSVC 2010.

> For now I only found one crash bug:
> http://www.lyx.org/trac/ticket/9892
> nothing more. Do you think that it is caused by iconv and friends?

Honestly I have no idea. But since it is clear that mixing MSVC versions can 
cause such bugs, it is a waste of time to investigate this issue as long as 
we do not have a clean build which uses only one MSVC version.


Georg


Reply via email to